Geplaatst: 28 augustus 201014 jaren comment_1713794 hallo, ik probeer een countdown te maken voor een cannon, alleen die public van de countdown zegt overal waar playerid staat undefined symbol "playerid" hier de code //bovenaan de forwards en de new's //countdown voor cannon new Count = -1; // is de timer voor de counter new CountdownTimer; // is de timer definitie voor de counter forward Countdown(); // om een warning te voorkomen public OnPlayerEnterCheckpoint(playerid) { SetTimer("Countdown", 1000, 1); TogglePlayerControllable(playerid,0); return 1; } 3070 public Countdown() 3071 { 3072 if(Count == 0) 3073 { 3074 GameTextForPlayer(playerid,"~r~launch!", 1000, 0); 3075 SetVehicleVelocity(GetPlayerVehicleID(playerid),0,25,0); 3076 KillTimer(CountdownTimer); 3077 TogglePlayerControllable(playerid, 1); 3078 } 3079 if(Count == 3) 3080 { 3081 GameTextForPlayer(playerid,"~r~3",1500,0 3082 SetVehiclePos(GetPlayerVehicleID(playerid),2407.0696,-2203.8452,24.1977); 3083 SetPlayerFacingAngle(playerid, 45.4094); 3084 } 3085 else 3086 { 3087 new string[128]; 3088 format(string, sizeof(string), "%d", Count); 3089 GameTextForAll(string, 1500, 0); 3090 Count--; 3091 } 3092 return 1; 3093 } //------------credits to spike2148 (van zijn tut "race met checkpoints" //------------met aanpassingen van Morph1 weet iemand wat hier mis is? Bewerkt: 28 augustus 201014 jaren door Morph1
Geplaatst: 28 augustus 201014 jaren comment_1713814 Logisch, want je geeft het playerid niet door aan de functie. Ook je KillTimer zal niet werken, omdat CountdownTimer altijd 0 is. En als ik nu even goed kijk kan ik besluiten dat die functie nooit zal werken, omdat count -1 is, en dus alleen maar verder zal aftellen naar -2, -3, ... tot in het oneindige. http://wiki.sa-mp.com/wiki/SetTimerEx forward Countdown(playerid); new Count = 5; // We beginnen met 5 SetPVarInt(playerid, "CountdownTimer", SetTimerEx("Countdown", 1000, true, "d", playerid)); // We slaan het id van die timer tijdelijk op in een player variabele if(Count == 0) { KillTimer(GetPVarInt(playerid, "CountdownTimer")); DeletePVar(playerid, "CoundownTimer"); }
Geplaatst: 28 augustus 201014 jaren Auteur comment_1714145 dus nu kan ik met jou countdown de count op 3 zetten en "if(Count == 3)" toevoegen met al die troep eronder??? of werkt het dan weer niet?
Geplaatst: 31 augustus 201014 jaren Auteur comment_1715885 nu werkt hij helemaal niet meer: public OnPlayerEnterCheckpoint(playerid) { SetTimer("Countdown", 10, 1); TogglePlayerControllable(playerid, 0); return 1; } forward Countdown(playerid); public Countdown(playerid) { new Count = 5;// We beginnen met 3 SetPVarInt(playerid, "CountdownTimer", SetTimerEx("Countdown", 1000, true, "d", playerid));// We slaan het id van die timer tijdelijk op in een player variabele if(Count == 0) { KillTimer(GetPVarInt(playerid, "CountdownTimer")); DeletePVar(playerid, "CoundownTimer"); GameTextForPlayer(playerid,"~r~launch",1000,0); SetVehicleVelocity(GetPlayerVehicleID(playerid),0,25,0); TogglePlayerControllable(playerid,1); } if(Count == 1) { TogglePlayerControllable(playerid,0); } if(Count == 3) { SetVehiclePos(GetPlayerVehicleID(playerid),2407.0696,-2203.8452,24.1977); SetVehicleZAngle(GetPlayerVehicleID(playerid),45.4094); } else { new string[128]; format(string, sizeof(string), "%d", Count); GameTextForAll(string, 1500, 0); Count--; } return 1; } nu word de speler bevroren en komt er alleen maar 5 seconde lang het getal 5 in beeld, en daarna weer, en weer, en weer enz. Bewerkt: 31 augustus 201014 jaren door Morph1
Geplaatst: 31 augustus 201014 jaren comment_1715895 Dit zou het in principe moeten doen: http://pawn.pastebin.com/KTKmzHLT
Geplaatst: 1 september 201014 jaren Auteur comment_1716280 Dit zou het in principe moeten doen: http://pawn.pastebin.com/KTKmzHLT ok hij werkt alleen er staat gametextforall(blabla) nu wordt van alle spelers bij elke seconde de status gereset, dus als je loopt staat als er een seconde voorbij gaat weer ineens stil. als ik van GameTextForAll(blabla) nu GameTextForPlayer(blabla) maak klopt die format niet meer en geeft hij de error argument type mismatch (argument 1) in de regel van GameTextForPlayer(blabla) weet iemand hoe je ervoor kan zorgen dat alleen de speler die de checkpoint ingaat de countdown in beeld krijgt?
hallo, ik probeer een countdown te maken voor een cannon, alleen die public van de countdown zegt overal waar playerid staat
undefined symbol "playerid"
hier de code
weet iemand wat hier mis is?
Bewerkt: door Morph1