Re:BigBadNewbie braucht Hilfe beim ersten Selfmade-spiel! Bi
Verfasst: 06.07.2002, 18:33
du meinst sicher WECHSLE_RAUM(r118,111,250) ?!
Adventure-Treff.de Forum
https://www.adventure-treff.de/phpbb/
Code: Alles auswählen
FILE* _rooms;
_rooms = fopen("../scripts/rooms.txt","r");
if(!_rooms)
{
fprintf(stderr,"\n[CORE]\t Error while attempting to load room info");
return;
}
char* buf = new char[2000];
{
for(int i = 0; i < 2000; i++)
buf[i] = '\0';
}
fread(buf,sizeof(char),2000,_rooms);
fclose(_rooms);
_rooms = NULL;
char sep[] = " ,\t,\n";
char* tok;
tok = strtok(buf,sep);
struct parse_rooms
{
bool open;
bool no;
bool pic;
bool col;
bool x;
bool y;
} p;
struct data_rooms
{
char* pic;
char* col;
int x;
int y;
int no;
} d;
d.pic = new char[200];
{
for(int i = 0; i < 200; i++)
d.pic[i] = '\0';
}
d.col = new char[200];
{
for(int i = 0; i < 200; i++)
d.col[i] = '\0';
}
while(tok != NULL)
{
switch(*tok)
{
case '{':
p.open = true;
p.pic = false;
p.col = false;
p.no = false;
p.x = false;
p.y = false;
break;
case '}':
p.open = false;
p.pic = false;
p.col = false;
p.no = false;
p.x = false;
p.y = false;
rooms[d.no].pic = new char[strlen(d.pic)+5];
{
for(unsigned int i = 0; i < (strlen(d.pic)+5); i++)
{
rooms[d.no].pic[i] = '\0';
}
}
rooms[d.no].col = new char[strlen(d.col)+5];
{
for(unsigned int i = 0; i < (strlen(d.col)+5); i++)
{
rooms[d.no].col[i] = '\0';
}
}
strncpy(rooms[d.no].pic,d.pic,strlen(d.pic));
strncpy(rooms[d.no].col,d.col,strlen(d.col));
rooms[d.no].x = d.x;
rooms[d.no].y = d.y;
rooms[d.no].no = d.no;
room_count++;
break;
case 'P':
p.pic = true;
p.col = false;
p.no = false;
p.x = false;
p.y = false;
break;
case 'C':
p.pic = false;
p.col = true;
p.no = false;
p.x = false;
p.y = false;
break;
case 'X':
p.pic = false;
p.col = false;
p.no = false;
p.x = true;
p.y = false;
break;
case 'Y':
p.pic = false;
p.col = false;
p.no = false;
p.x = false;
p.y = true;
break;
case '#':
p.pic = false;
p.col = false;
p.no = true;
p.x = false;
p.y = false;
default:
if(p.open)
{
if(p.pic)
{
strncpy(d.pic,tok,strlen(tok));
}
else if (p.col)
{
strncpy(d.col,tok,strlen(tok));
}
else if (p.no)
{
d.no = atoi(tok);
}
else if (p.x)
{
d.x = atoi(tok);
}
else if (p.y)
{
d.y = atoi(tok);
}
}
break;
}
tok = strtok(NULL,sep);
}
die Betonung liegt auf "eigentlich"nun ja du solltest es ja auch eigentlich schon können
Code: Alles auswählen
typedef enum
{
false = 0;
true;
} bool;
Code: Alles auswählen
{
if(x = 5); // x wird 5, ausdruck (x = 5) ergibt 5; bedingung erfüllt
if(x == 5); // wenn x == 5 ist ergibt ausdruck 5, sonst 0
if( (x == 5) ? 5 : 0) ) // wäre äquivalent
}
Code: Alles auswählen
Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!?Häh?!? (etc...)
Code: Alles auswählen
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char* argv[])
{
int alle_kapieren_nix = 1;
int dasjan_iq = 50; // witz ;)
while(dasjan_iq <= 100 && alle_kapieren_nix)
{
fprintf(stderr,"Haeh?!");
dasjan_iq++; // ggf auskommentieren ;)
}
return (dasjan_iq << 2);
}