Beiträge von Jeffry
-
-
switch(Zname)
zu:
switch(Zname[i])Der kaputte Style hat das entfernt.
-
Deshalb sagte ich ja, dass du das Problem richtig erklären sollst.
Die Schleife und ein return war falsch gesetzt, außerdem habe ich else if's aus den if's gemacht.
Außerdem hätte der Code nur für Spieler ID 0 geklappt.
Versuche es so:C
Alles anzeigenpublic RespawnCarTimer1() { CarRespawnValue = 1; CarRespawnTimer2 = SetTimer("RespawnCarTimer2",1000,true); return 1; } public RespawnCarTimer2() { if(CarRespawnValue==1) { CarRespawnValue = 2; for(new playerid; playerid<MAX_PLAYERS; playerid++) GameTextForPlayer(playerid,"~r~3",1000,4); } else if(CarRespawnValue==2) { CarRespawnValue = 3; for(new playerid; playerid<MAX_PLAYERS; playerid++) GameTextForPlayer(playerid,"~r~2",1000,4); } else if(CarRespawnValue==3) { CarRespawnValue = 4; for(new playerid; playerid<MAX_PLAYERS; playerid++) GameTextForPlayer(playerid,"~r~1",1000,4); } else if(CarRespawnValue==4) { KillTimer(CarRespawnTimer1); KillTimer(CarRespawnTimer2); for(new playerid; playerid<MAX_PLAYERS; playerid++) GameTextForPlayer(playerid,"~r~Respawn!",1000,4); for(new i; i < MAX_VEHICLES; i++) { if(!IsBodyInVehicle(i)) SetVehicleToRespawn(i); } } return 1; } -
-
http://www.imgur.com
In Verbindung mit Greenshot für den direkten Upload: http://getgreenshot.org/de/ -
-
C
CMD:getip(playerid,params[]) { new pID; if(sscanf(params, "u", pID)) return SendClientMessage(playerid, 0xFF0000FF, "Nutze: /getip [Spieler]"); if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,0xFF0000FF,"Error: Spieler nicht online."); new string[145]; GetPlayerIp(pID,string,sizeof(string)); format(string, sizeof(string),"[IP] %s's IP: %s", SpielerName(pID), string); return SendClientMessage(playerid,-1,string); } -
Beim Pickup:
if(WeaponData[i][weapon] < 0 || WeaponData[i][weapon] > 47)
zu:
if(WeaponData[i][weapon] > 0 && WeaponData[i][weapon] < 47) -
Kommt auf die Anwendung an. Schau dir das Beispiel an. Wenn du einen Cache zwischenspeichern willst, dann ist das sehr wohl angebracht.
Manche nutzen es der Form halber auch anstatt mysql_free_result, um den Cache einfach nach Verwendung zu leeren. Muss man nicht, kann man aber. -
Schreibe den Befehl so, sonst wird dir das Pickup X mal erstellt:
C
Alles anzeigenocmd:createweapon(playerid,params[]) { new weaponid, ammo; if(!isPlayerAnAdmin(playerid, 3)) return SendClientMessage(playerid,COLOR_GREY,""#ADMINSATZ""); if(sscanf(params,"ii",weaponid, ammo))return SendClientMessage(playerid, COLOR_GREY,"Benutze: /createweapon [WaffenID] [Ammo]"); new Float:x,Float:y,Float:z; GetPlayerPos(playerid,x,y,z); for(new i = 0; i < MAX_W_PICKUP; i++) { if(WeaponData[i][created] == 0) { CreateWeaponPickup(i, weaponid, ammo, 1, x, y, z, GetPlayerVirtualWorld(playerid), playerid); return 1; } } return 1; }Wenn das Problem noch immer existiert, poste nochmal die aktuelle CreateWeaponPickup Funktion.
-
Das stimmt nicht ganz.
Sie heißt jetzt: http://wiki.sa-mp.com/wiki/MySQL/R33#cache_delete -
else if(weaponid == 1) return WeaponData[id][wID] = ...
zu:
else if(weaponid == 1) WeaponData[id][wID] = ...
Jeweils das return weg machen, sonst kommt er unten nicht an, um die Ammo etc zu setzen.
-
-
An dem Code ist bezüglich der Textdraws nichts falsch.
Bist du dir sicher, dass du die Textdraws nirgends löschst oder hidest?
Verschwinden alle dieser Textdraws? -
Was funktioniert nicht?
Was passiert, und was sollte eigentlich passieren?
-
leider funktioiert das nicht ganz ....
Hast du es mal mit einer anderen Animation ausprobiert?
Starte die Animation gegebenenfalls mal unter http://wiki.sa-mp.com/wiki/OnActorStreamIn . -
Also ich kann diesen Code ohne Probleme kompilieren.
Kopiere das nochmal alles von hier raus und füge es in einen neue .pwn Datei an, dann sollte es klappen. Ansonsten poste bitte genau das, was im Compiler steht. -
if(value >= 1.0) // Variable wieder zurücksetzen und -1 HP
Dann kannst du auch einen Timer machen, der nur alle 10 Sekunden aufgerufen wird

-
Setze die SendClientMessageEx ganz ans Ende (auf jeden Fall nach dem mysql_pquery) hin, da du wohl mit dieser Funktion per Referenz auf "query" zugreifst und den Zeilenumbruch in das Query schreibst. Somit entsteht ein Syntaxfehler.
-
Du machst einen stock, den benennst du "AnybodyInVehicle(vehicleid)".
Dort drin machst du eine Schleife durch alle Spieler (for new i ...) und fragst ab, ob der Spieler in der vehicleid ist (IsPlayerInVehicle), wenn ja, dann returnst du true. Nach der Schleife returnst du false.In deinem Befehl machst du dann eine Schleife durch alle Fahrzeuge (MAX_VEHICLES) und fragst jeweils ab, ob AnybodyInVehicle false (!) ist. Wenn ja, dann setzt du das Fahrzeug zu Respawn, ansonsten nicht.