Geplaatst: 9 mei 201016 jaren Hallo! Kunnen jullie me hiermee helpen? if(!strcmp(cmd, "/cuff", true)) { if (gTeam[playerid] == TEAM_COP0) { new giveplayerid, pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME], string[100]; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, 0xFF0000AA, "Gebruik: /cuff [id]"); return 1; } giveplayerid = strval(tmp); if(!IsPlayerConnected(giveplayerid)) { SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!"); return 1; } GetPlayerName(giveplayerid, pName, sizeof(pName)); GetPlayerName(playerid, oName, sizeof(oName)); format(string, sizeof(string), "Cop Message: %s heeft bij %s de handboeien om gedaan!", oName,pName); TogglePlayerControllable(giveplayerid,0); } return 1; }
Geplaatst: 9 mei 201016 jaren Auteur Wat is er precies fout? Mvg, Jeroen. Beste Jeroen, Als ik ingame /cuff doet hij niks en als in /cuff + id typ (wat ook de bedoeling is) krijg ik: SERVER: UNKNOWN COMMAND in plaats van dat dat ID niet meer bestuurbaar is! Bewerkt: 9 mei 201016 jaren door Johannetje2
Geplaatst: 9 mei 201016 jaren Heb je 1. Het filterscript ge-compiled? 2. Het filterscript in de config gezet?
Geplaatst: 9 mei 201016 jaren Auteur Heb je 1. Het filterscript ge-compiled? 2. Het filterscript in de config gezet? Ja, en als ik alles in suspect verander, maakt hij me bij /su suspect en bij /su + id SERVER: UNKNOWN COMMAND Dit staat bovenaan mijn script: new cmd[256]; new idx; new tmp[256]; Bewerkt: 9 mei 201016 jaren door Johannetje2
Geplaatst: 9 mei 201016 jaren Probeer dit eens, Mvg, Jeroen. if(strcmp(cmd, "/cuff", true) == 0) { new string[128], pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME]; if(gTeam[playerid] != TEAM_COP0) return SendClientMessage(playerid, 0x919191FF, "Je bent geen cop!"); tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SendClientMessage(playerid, 0x919191FF, "Gebruik: /cuff [id]"); giveplayerid = strval(tmp); GetPlayerName(playerid, pName, sizeof(pName)); GetPlayerName(giveplayerid, oName, sizeof(oName)); if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!"); TogglePlayerControllable(giveplayerid, 0); format(string, sizeof(string), "Cop Message: %s heeft bij %s de handboeien om gedaan!", pName, oName); SendClientMessageToAll(0xE21D2CFF, string); return 1; }
Geplaatst: 9 mei 201016 jaren Auteur Ik had zelf nog een script, en die werkt nu Alleen dan nog een vraagje, hoe maak ik een /reclame + tekst commando? Dus dat ik doe, /reclame motor voor $100!! dat er staat: Reclame: Motor voor $100!!, PM Johannetje2(0) voor meer informatie Bewerkt: 9 mei 201016 jaren door Johannetje2
Geplaatst: 9 mei 201016 jaren Hier de script voor /reclame. Groetjes, Jeroen. if(strcmp(cmdtext,"/reclame",true, ==0) { new string[256]; new pName[MAX_PLAYER_NAME]; if(!cmdtext[8]) return SendClientMessage(playerid,0xFF0000AA,"Gebruik: /reclame [bericht]"); GetPlayerName(playerid,pName,sizeof(pName)); format(string, sizeof(string), "Reclame: %s, PM %s(%i) voor meer informatie!",cmdtext[8], pName, playerid); SendClientMessageToAll(0xFF0000AA,string); return 1; }
Geplaatst: 9 mei 201016 jaren Auteur Bedankt! Ik zal hem straks testen. Alleen ff een vraag... Ik heb nu de volgende code: (Weet niet offie werkt) if(strcmp("/wapens", cmdtext, true) == 0) { new playercolor2; playercolor2 = GetPlayerColor(playerid); if (playercolor2 == COLOR_ORANGE) { SendClientMessage(playerid, COLOR_RED, "Je kan geen wapens kopen als je wordt gezocht!"); } return 1; } Maar hoe zet ik er nu een Else functie op?
Geplaatst: 9 mei 201016 jaren Ik heb het onderaan even neergezet. Groetjes, Jeroen. if(strcmp("/wapens", cmdtext, true) == 0) { new playercolor2; playercolor2 = GetPlayerColor(playerid); if (playercolor2 == COLOR_ORANGE) // Als de kleur oranje is ga dan verder { SendClientMessage(playerid, COLOR_RED, "Je kan geen wapens kopen als je wordt gezocht!"); } else // Als de kleur anders dan oranje is (dus bijvoorbeeld groen), doe dan dit: { SendClientMessage(playerid, COLOR_RED, "Nu kan het wel!"); } return 1; }
Geplaatst: 9 mei 201016 jaren Auteur Super bedankt! En als slot zoek ik nog iets dat als je bijvoorbeeld /fluister + tekst zegt dat er het volgende gebeurt: Alle mensen binnen een straal van ongeveer 10M kunnen horen wat je zegt, /fluister hey, hallo! Binnen 10 meter: Hey Hallo! Buiten 10 meter:
Geplaatst: 10 mei 201016 jaren Het is toch wel duidelijk dat ik niet alles ga voorkauwen? Je kan een 'loop' (uitspraak: 'loep') gebruiken om langs elke speler te gaan (MAX_PLAYERS). In deze loop kun je dan gebruik maken van een stock genaamd GetDistanceBetweenPlayers (staat hieronder) en die gebruiken om de afstand tussen de 2 spelers te bepalen. Dan kun je in een if statement zeggen van: if(GetDistanceBetweenPlayers(playerid, variabele-in-jou-loop) < 10) { // Hier de rest, net zoals de /reclame ongeveer } Die 10 staat voor de afstand tussen de spelers (daar moet je misschien met iemand mee experimenteren). Dus ik zou tutorials bij langs gaan die wat uitleggen over loops, en even googelen naar voorbeeld scriptjes. Je kan altijd als je vastloopt even je script posted wat je dan hebt, dan kunnen we je verder helpen. Groetjes, Jeroen. PS. Dit moet helemaal onder aan je script. public GetDistanceBetweenPlayers(playerid,playerid2) { new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2; new Float:tmpdis; GetPlayerPos(playerid,x1,y1,z1); GetPlayerPos(playerid2,x2,y2,z2); tmpdis = floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2)); return floatround(tmpdis); }
Geplaatst: 10 mei 201016 jaren Auteur Ik kan niks vinden wat mij echt iets zegt over die 'loops' Wat bedoel je hier mee: variabele-in-jou-loop
Geplaatst: 10 mei 201016 jaren for(new x = 0; x <= MAX_PLAYERS; x++) { // Hier moet die if statement dus. } Hierboven staat een loop (for statement). En de variabele is dux x. Groetjes, Jeroen. Bewerkt: 10 mei 201016 jaren door Ophion
Geplaatst: 10 mei 201016 jaren Auteur Het spijt me echt dat ik hier niks van snap! Moet dat dan ook met Y en Z? en wat is // Hier moet die if statement dus.
Geplaatst: 10 mei 201016 jaren Nee dat hoeft niet. De "x" is gewoon een willekeurige letter, je kunt ook een "a" of elke andere letter doen.
Hallo!
Kunnen jullie me hiermee helpen?
if(!strcmp(cmd, "/cuff", true)) { if (gTeam[playerid] == TEAM_COP0) { new giveplayerid, pName[MAX_PLAYER_NAME],oName[MAX_PLAYER_NAME], string[100]; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) { SendClientMessage(playerid, 0xFF0000AA, "Gebruik: /cuff [id]"); return 1; } giveplayerid = strval(tmp); if(!IsPlayerConnected(giveplayerid)) { SendClientMessage(playerid, 0xFF0000AA, "Deze speler is niet online!"); return 1; } GetPlayerName(giveplayerid, pName, sizeof(pName)); GetPlayerName(playerid, oName, sizeof(oName)); format(string, sizeof(string), "Cop Message: %s heeft bij %s de handboeien om gedaan!", oName,pName); TogglePlayerControllable(giveplayerid,0); } return 1; }