|
@@ -1,16 +1,6 @@
|
|
#include "Reader.h"
|
|
#include "Reader.h"
|
|
#include "Spiel.h"
|
|
#include "Spiel.h"
|
|
|
|
|
|
-struct SpielerTeamStruktur
|
|
|
|
-{
|
|
|
|
- int spielerAnzahl;
|
|
|
|
- int teamAnzahl;
|
|
|
|
- Array< int > spielerFarbe;
|
|
|
|
- Array< int > teamFarbe;
|
|
|
|
- RCArray< Text > teamName;
|
|
|
|
- Array< int > teamSize;
|
|
|
|
-};
|
|
|
|
-
|
|
|
|
|
|
|
|
// Konstruktor
|
|
// Konstruktor
|
|
MapReader::MapReader( int karteId, SSDatenbankV *db, char *tmpPfad )
|
|
MapReader::MapReader( int karteId, SSDatenbankV *db, char *tmpPfad )
|
|
@@ -659,6 +649,8 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
int verschiebungWeite;
|
|
int verschiebungWeite;
|
|
int autoSchaltungMaxTime;
|
|
int autoSchaltungMaxTime;
|
|
int team;
|
|
int team;
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
@@ -667,7 +659,7 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
mapFile.lese( (char *)& verschiebungWeite, 4 );
|
|
mapFile.lese( (char *)& verschiebungWeite, 4 );
|
|
mapFile.lese( (char *)& autoSchaltungMaxTime, 4 );
|
|
mapFile.lese( (char *)& autoSchaltungMaxTime, 4 );
|
|
mapFile.lese( (char *)& team, 4 );
|
|
mapFile.lese( (char *)& team, 4 );
|
|
- zSpiel->addBariere( new Bariere( zSpiel->getNextId(), x, y, breite, height, style, verschiebungWeite, autoSchaltungMaxTime, zSpiel->getTeam( team ) ) );
|
|
|
|
|
|
+ zSpiel->addBariere( new Bariere( id, x, y, breite, height, style, verschiebungWeite, autoSchaltungMaxTime, zSpiel->getTeam( team ) ) );
|
|
}
|
|
}
|
|
// Basen
|
|
// Basen
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
@@ -679,13 +671,15 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
int height;
|
|
int height;
|
|
int maxTime;
|
|
int maxTime;
|
|
int team;
|
|
int team;
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
mapFile.lese( (char *)& height, 4 );
|
|
mapFile.lese( (char *)& height, 4 );
|
|
mapFile.lese( (char *)& maxTime, 4 );
|
|
mapFile.lese( (char *)& maxTime, 4 );
|
|
mapFile.lese( (char *)& team, 4 );
|
|
mapFile.lese( (char *)& team, 4 );
|
|
- zSpiel->addBase( new Base( zSpiel->getNextId(), x, y, breite, height, maxTime, zSpiel->getTeam( team ) ) );
|
|
|
|
|
|
+ zSpiel->addBase( new Base( id, x, y, breite, height, maxTime, zSpiel->getTeam( team ) ) );
|
|
}
|
|
}
|
|
// Drops
|
|
// Drops
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
@@ -698,6 +692,8 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
int maxTime;
|
|
int maxTime;
|
|
int numDrops;
|
|
int numDrops;
|
|
float wahrscheinlichkeit[ ITEMANZAHL ];
|
|
float wahrscheinlichkeit[ ITEMANZAHL ];
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
mapFile.lese( (char *)& minX, 4 );
|
|
mapFile.lese( (char *)& minX, 4 );
|
|
mapFile.lese( (char *)& minY, 4 );
|
|
mapFile.lese( (char *)& minY, 4 );
|
|
mapFile.lese( (char *)& maxX, 4 );
|
|
mapFile.lese( (char *)& maxX, 4 );
|
|
@@ -711,7 +707,7 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
char *name = new char[ (int)len + 1 ];
|
|
char *name = new char[ (int)len + 1 ];
|
|
mapFile.lese( name, len );
|
|
mapFile.lese( name, len );
|
|
name[ (int)len ] = 0;
|
|
name[ (int)len ] = 0;
|
|
- zSpiel->addDrop( new Drop( zSpiel->getNextId(), minX, maxX, minY, maxY, maxTime, numDrops, name, wahrscheinlichkeit ) );
|
|
|
|
|
|
+ zSpiel->addDrop( new Drop( id, minX, maxX, minY, maxY, maxTime, numDrops, name, wahrscheinlichkeit ) );
|
|
delete[] name;
|
|
delete[] name;
|
|
}
|
|
}
|
|
// Schalter
|
|
// Schalter
|
|
@@ -723,12 +719,14 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
int breite;
|
|
int breite;
|
|
int height;
|
|
int height;
|
|
bool aktive;
|
|
bool aktive;
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
mapFile.lese( (char *)& height, 4 );
|
|
mapFile.lese( (char *)& height, 4 );
|
|
mapFile.lese( (char *)& aktive, 1 );
|
|
mapFile.lese( (char *)& aktive, 1 );
|
|
- zSpiel->addSchalter( new Schalter( zSpiel->getNextId(), x, y, breite, height, aktive ) );
|
|
|
|
|
|
+ zSpiel->addSchalter( new Schalter( id, x, y, breite, height, aktive ) );
|
|
}
|
|
}
|
|
// Schiene
|
|
// Schiene
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
@@ -738,11 +736,13 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
int y;
|
|
int y;
|
|
int breite;
|
|
int breite;
|
|
int height;
|
|
int height;
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
mapFile.lese( (char *)& height, 4 );
|
|
mapFile.lese( (char *)& height, 4 );
|
|
- zSpiel->addSchiene( new Schiene( zSpiel->getNextId(), x, y, breite, height ) );
|
|
|
|
|
|
+ zSpiel->addSchiene( new Schiene( id, x, y, breite, height ) );
|
|
}
|
|
}
|
|
// Timer
|
|
// Timer
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
@@ -755,6 +755,8 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
bool autoWiederhohlung;
|
|
bool autoWiederhohlung;
|
|
bool runns;
|
|
bool runns;
|
|
int farbe;
|
|
int farbe;
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& maxZeit, 4 );
|
|
mapFile.lese( (char *)& maxZeit, 4 );
|
|
@@ -767,7 +769,7 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
char *name = new char[ (int)len + 1 ];
|
|
char *name = new char[ (int)len + 1 ];
|
|
mapFile.lese( name, len );
|
|
mapFile.lese( name, len );
|
|
name[ (int)len ] = 0;
|
|
name[ (int)len ] = 0;
|
|
- zSpiel->addTimer( new Timer( zSpiel->getNextId(), name, maxZeit, x, y, sichtbar, autoWiederhohlung, runns, farbe ) );
|
|
|
|
|
|
+ zSpiel->addTimer( new Timer( id, name, maxZeit, x, y, sichtbar, autoWiederhohlung, runns, farbe ) );
|
|
delete[] name;
|
|
delete[] name;
|
|
}
|
|
}
|
|
// Tunnel
|
|
// Tunnel
|
|
@@ -781,6 +783,8 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
int zielX;
|
|
int zielX;
|
|
int zielY;
|
|
int zielY;
|
|
bool aktiv;
|
|
bool aktiv;
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
@@ -788,7 +792,7 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
mapFile.lese( (char *)& zielX, 4 );
|
|
mapFile.lese( (char *)& zielX, 4 );
|
|
mapFile.lese( (char *)& zielY, 4 );
|
|
mapFile.lese( (char *)& zielY, 4 );
|
|
mapFile.lese( (char *)& aktiv, 1 );
|
|
mapFile.lese( (char *)& aktiv, 1 );
|
|
- zSpiel->addTunnel( new Tunnel( zSpiel->getNextId(), x, y, breite, height, zielX, zielY, aktiv ) );
|
|
|
|
|
|
+ zSpiel->addTunnel( new Tunnel( id, x, y, breite, height, zielX, zielY, aktiv ) );
|
|
}
|
|
}
|
|
// Umlenkungen
|
|
// Umlenkungen
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
@@ -802,6 +806,8 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
int maxAbklingzeit;
|
|
int maxAbklingzeit;
|
|
bool drehend;
|
|
bool drehend;
|
|
bool aktiv;
|
|
bool aktiv;
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& x, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& y, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
mapFile.lese( (char *)& breite, 4 );
|
|
@@ -810,12 +816,14 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
mapFile.lese( (char *)& maxAbklingzeit, 4 );
|
|
mapFile.lese( (char *)& maxAbklingzeit, 4 );
|
|
mapFile.lese( (char *)& drehend, 1 );
|
|
mapFile.lese( (char *)& drehend, 1 );
|
|
mapFile.lese( (char *)& aktiv, 1 );
|
|
mapFile.lese( (char *)& aktiv, 1 );
|
|
- zSpiel->addUmlenkung( new Umlenkung( zSpiel->getNextId(), x, y, breite, height, (Richtung)richtung, maxAbklingzeit, drehend, aktiv ) );
|
|
|
|
|
|
+ zSpiel->addUmlenkung( new Umlenkung( id, x, y, breite, height, (Richtung)richtung, maxAbklingzeit, drehend, aktiv ) );
|
|
}
|
|
}
|
|
// Trigger
|
|
// Trigger
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
mapFile.lese( (char *)& anz, 4 );
|
|
for( int i = 0; i < anz; i++ )
|
|
for( int i = 0; i < anz; i++ )
|
|
{
|
|
{
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
char len;
|
|
char len;
|
|
mapFile.lese( (char *)& len, 1 );
|
|
mapFile.lese( (char *)& len, 1 );
|
|
char *name = new char[ (int)len + 1 ];
|
|
char *name = new char[ (int)len + 1 ];
|
|
@@ -836,7 +844,7 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
RCArray< Aktion > *aktionen = new RCArray< Aktion >();
|
|
RCArray< Aktion > *aktionen = new RCArray< Aktion >();
|
|
for( int j = 0; j < aktionAnzahl; j++ )
|
|
for( int j = 0; j < aktionAnzahl; j++ )
|
|
aktionen->add( readAktion( mapFile ) );
|
|
aktionen->add( readAktion( mapFile ) );
|
|
- zSpiel->addTrigger( new Trigger( zSpiel->getNextId(), name, ereignisAnzahl, ereignisse, bedingungen, aktionen ) );
|
|
|
|
|
|
+ zSpiel->addTrigger( new Trigger( id, name, ereignisAnzahl, ereignisse, bedingungen, aktionen ) );
|
|
delete[] name;
|
|
delete[] name;
|
|
}
|
|
}
|
|
// Variablen
|
|
// Variablen
|
|
@@ -850,139 +858,146 @@ void MapReader::ladeKarte( Spiel *zSpiel )
|
|
name[ (int)len ] = 0;
|
|
name[ (int)len ] = 0;
|
|
char typ;
|
|
char typ;
|
|
mapFile.lese( &typ, 1 );
|
|
mapFile.lese( &typ, 1 );
|
|
|
|
+ char def;
|
|
|
|
+ mapFile.lese( &def, 1 );
|
|
Variable *var;
|
|
Variable *var;
|
|
- switch( typ )
|
|
|
|
- {
|
|
|
|
- case NICHTS:
|
|
|
|
|
|
+ if( !def )
|
|
var = new Variable( NICHTS );
|
|
var = new Variable( NICHTS );
|
|
- break;
|
|
|
|
- case INTEGER:
|
|
|
|
- {
|
|
|
|
- int val;
|
|
|
|
- mapFile.lese( (char *)& val, 4 );
|
|
|
|
- var = new Integer( val );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case BOOLEAN:
|
|
|
|
- {
|
|
|
|
- bool val;
|
|
|
|
- mapFile.lese( (char *)& val, 1 );
|
|
|
|
- var = new Boolean( val );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case STRING:
|
|
|
|
- {
|
|
|
|
- char len;
|
|
|
|
- mapFile.lese( (char *)& len, 1 );
|
|
|
|
- char *value = new char[ (int)len + 1 ];
|
|
|
|
- mapFile.lese( value, len );
|
|
|
|
- value[ (int)len ] = 0;
|
|
|
|
- var = new String( value );
|
|
|
|
- delete[] value;
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case RICHTUNG:
|
|
|
|
- {
|
|
|
|
- char len;
|
|
|
|
- mapFile.lese( (char *)& len, 1 );
|
|
|
|
- char *value = new char[ (int)len + 1 ];
|
|
|
|
- mapFile.lese( value, len );
|
|
|
|
- value[ (int)len ] = 0;
|
|
|
|
- var = new String( getRichtungFromString( Text( value ) ) );
|
|
|
|
- delete[] value;
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case FLOAT:
|
|
|
|
- {
|
|
|
|
- float val;
|
|
|
|
- mapFile.lese( (char *)& val, 4 );
|
|
|
|
- var = new Float( val );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case TASTE:
|
|
|
|
- {
|
|
|
|
- char val;
|
|
|
|
- mapFile.lese( &val, 1 );
|
|
|
|
- var = new Integer( val, 1 );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case SPIELER:
|
|
|
|
- {
|
|
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = zSpiel->getSpieler( id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case TIMER:
|
|
|
|
- {
|
|
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = zSpiel->getTimer( id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case TEAM:
|
|
|
|
- {
|
|
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = zSpiel->getTeam( id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case BARIERE:
|
|
|
|
- {
|
|
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = zSpiel->getBariere( id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case SCHALTER:
|
|
|
|
- {
|
|
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = zSpiel->getSchalter( id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case BASE:
|
|
|
|
- {
|
|
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = zSpiel->getBase( id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case GEGENSTAND:
|
|
|
|
|
|
+ else
|
|
{
|
|
{
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = new GegenstandTypVar( (GegenstandTyp)id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case SCHIENE:
|
|
|
|
- {
|
|
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = zSpiel->getSchiene( id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case TUNNEL:
|
|
|
|
- {
|
|
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = zSpiel->getTunnel( id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case UMLENKUNG:
|
|
|
|
- {
|
|
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = zSpiel->getUmlenkung( id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- case TRIGGER:
|
|
|
|
- {
|
|
|
|
- int id;
|
|
|
|
- mapFile.lese( (char *)& id, 4 );
|
|
|
|
- var = zSpiel->getTrigger( id );
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
|
|
+ switch( typ )
|
|
|
|
+ {
|
|
|
|
+ case NICHTS:
|
|
|
|
+ var = new Variable( NICHTS );
|
|
|
|
+ break;
|
|
|
|
+ case INTEGER:
|
|
|
|
+ {
|
|
|
|
+ int val;
|
|
|
|
+ mapFile.lese( (char *)& val, 4 );
|
|
|
|
+ var = new Integer( val );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case BOOLEAN:
|
|
|
|
+ {
|
|
|
|
+ bool val;
|
|
|
|
+ mapFile.lese( (char *)& val, 1 );
|
|
|
|
+ var = new Boolean( val );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case STRING:
|
|
|
|
+ {
|
|
|
|
+ char len;
|
|
|
|
+ mapFile.lese( (char *)& len, 1 );
|
|
|
|
+ char *value = new char[ (int)len + 1 ];
|
|
|
|
+ mapFile.lese( value, len );
|
|
|
|
+ value[ (int)len ] = 0;
|
|
|
|
+ var = new String( value );
|
|
|
|
+ delete[] value;
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case RICHTUNG:
|
|
|
|
+ {
|
|
|
|
+ char len;
|
|
|
|
+ mapFile.lese( (char *)& len, 1 );
|
|
|
|
+ char *value = new char[ (int)len + 1 ];
|
|
|
|
+ mapFile.lese( value, len );
|
|
|
|
+ value[ (int)len ] = 0;
|
|
|
|
+ var = new String( getRichtungFromString( Text( value ) ) );
|
|
|
|
+ delete[] value;
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case FLOAT:
|
|
|
|
+ {
|
|
|
|
+ float val;
|
|
|
|
+ mapFile.lese( (char *)& val, 4 );
|
|
|
|
+ var = new Float( val );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case TASTE:
|
|
|
|
+ {
|
|
|
|
+ char val;
|
|
|
|
+ mapFile.lese( &val, 1 );
|
|
|
|
+ var = new Integer( val, 1 );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case SPIELER:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = zSpiel->getSpieler( id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case TIMER:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = zSpiel->getTimer( id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case TEAM:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = zSpiel->getTeam( id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case BARIERE:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = zSpiel->getBariere( id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case SCHALTER:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = zSpiel->getSchalter( id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case BASE:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = zSpiel->getBase( id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case GEGENSTAND:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = new GegenstandTypVar( (GegenstandTyp)id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case SCHIENE:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = zSpiel->getSchiene( id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case TUNNEL:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = zSpiel->getTunnel( id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case UMLENKUNG:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = zSpiel->getUmlenkung( id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ case TRIGGER:
|
|
|
|
+ {
|
|
|
|
+ int id;
|
|
|
|
+ mapFile.lese( (char *)& id, 4 );
|
|
|
|
+ var = zSpiel->getTrigger( id );
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
}
|
|
}
|
|
zSpiel->addVariable( name, var );
|
|
zSpiel->addVariable( name, var );
|
|
delete[] name;
|
|
delete[] name;
|