Niemand kann hier ohne code helfen
Beiträge von Cody09
-
-
such mal im englischen forum, da gibts nen script, das klammern fehler findet, oder mit notepad ++ da kannst du die offenen und zunen klammern zählen und erstmal schauen ob das ein klammern fehler gibt, es gibt auch noch anderes, das 26 errors auslöst
-
man kann das nur auf das jeweilige script scripten, wenn man wenigstens code hätte xD
-
Noch optimierter:
new count;
forward Timer();
forward timertimer();//unter onplayercommand text
if(strcmp("/countdown", cmdtext, true) == 0)
{
count = 5; // anpassen.
SendClientMessage(playerid,farbe,"Countdown gestartet.");
timertimer = SetTimer("Timer",1000,false);
return 1;
}//irgendwo ins script
public Timer()
{
count --;
new str[2];
format(str,2,"%d",count);
GameTextForAll( str, 1000, 4);
if(count == 1)
{
SendClientMessageToAll(farbe,"Go!");
KillTimer(timertimer);
}
return 1;
} -
naja, der wird ja mit deinem timer zerstört, das heist, er verschwindet erst dann wenn der timer aufgerufen wird, wenn du willst, das er zerstört wird, wenn er sich wieder einloggt, müsstest du das ganze system mit namen machen statt mit der id
//edit: oder mysql id oder so machen
-
gutes Script, aber wenn du schon mit nem eigenen Script anfängst: nimm MySql! Ich würde es dir empfehlen
-
oh ganz vergessen, du musst machen:
new Text3D:Logout3DTextrgr[MAX_PLAYERS];
-
der error kommt zu welcher zeile?
-
der bot fährt auch ohne tank weiter
-
naja er führt die funktion ja in der mitte der gta karte aus und nicht am rand, und ich denke die karte ist 6000x6000 oder so
//edit falsch gelesen
-
benutzt du irgendwelche streamer?
ich sehe noch du benutzt
Logout3DTextrgr
als variableversuch es doch mal so:
new Logout3DTextrgr[MAX_PLAYERS];
public OnPlayerDisconnect(playerid, reason)
Logout3DTextrgr[playerid] = Create3DTextLabel(string,COLOR_WHITE,PlayerLogoutX, PlayerLogoutY, PlayerLogoutZ,5.0,0,0);
SetTimerEx("DestroyLogoutLabelrgr",30000,0,"i",playerid);forward DestroyLogoutLabelrgr(playerid);
public DestroyLogoutLabelrgr(playerid)
{
Delete3DTextLabel(Logout3DTextrgr[playerid]);
return 1;
}und bei deinem code fehlen noch ein paar sachen^^ sie unter settimerex das playerid nach "i"
-
poste doch mal onplayerkeystatechange^^
-
public OnPlayerConnect(playerid){RemoveBuildingForPlayer(playerid, 1238, 0, 0, 0,4000);
RemoveBuildingForPlayer(playerid, 1262, 0, 0, 0,4000);
RemoveBuildingForPlayer(playerid, 1263, 0, 0, 0,4000);
RemoveBuildingForPlayer(playerid, 1283, 0, 0, 0,4000);
RemoveBuildingForPlayer(playerid, 1284, 0, 0, 0,4000);
RemoveBuildingForPlayer(playerid, 1315, 0, 0, 0,4000);
RemoveBuildingForPlayer(playerid, 1320, 0, 0, 0,4000);
RemoveBuildingForPlayer(playerid, 1321, 0, 0, 0,4000);
RemoveBuildingForPlayer(playerid, 1322, 0, 0, 0,4000);
RemoveBuildingForPlayer(playerid, 1323, 0, 0, 0,4000);
RemoveBuildingForPlayer(playerid, 1324, 0, 0, 0,4000);
return 1;
}schau mal so
-
ja, hatte ich erst danach gelesen, hast ja jetzt die lösung
-
ocmd:countdown(playerid,cmdtext[])
{
SetTimer("countdown4");
GameTextForAll( "5", 1000, 4);
reuturn 1;
}
forward countdown4();
forward countdown3();
forward countdown2();
forward countdown1();
forward countdowngo();
public countdown4(){SetTimer("countdown3"); GameTextForAll( "4...", 1000, 4);}
public countdown3(){SetTimer("countdown2"); GameTextForAll( "3...", 1000, 4);}
public countdown2(){SetTimer("countdown1"); GameTextForAll( "2...", 1000, 4);}
public countdown1(){SetTimer("countdowngo"); GameTextForAll( "1...", 1000, 4);}
public countdowngo()GameTextForAll( "GO!!", 1000, 4);
vllt klappts ja, musst mal testen, ich benutze ocmd, kannst auch dcmd benutzen -
oh übersehen, du benutzt ja schon "mysql_fetch_int"
es geht beides, welche fehlermeldung zeigt er denn?
-
es wird als string ausgelesen aus mysql..probiers mal
-
vllt ganz unten:
return strval(sqlint);
statt
return sqlint;
und nochwas: man spart viel wenn du die query: new query[128];
kleiner machen würdest, man brauch nciht so viel -
es ist unter onplayerupdate
-
das textdraw erstellt man unter onplayerconnect..