Big Boss Geplaatst: 3 oktober 2009 Rapport Geplaatst: 3 oktober 2009 En wat moet het ongeveer voor gaan stellen? Tevens zie ik niet echt het nut in van 30 maal een ~n~ te zetten als je ook gewoon de positie kan aanpassen. Je mag ook geen spaties gebruiken in TextDraws, elke spatie moet worden voorgesteld met een _ .
Crusher!! Geplaatst: 4 oktober 2009 Rapport Geplaatst: 4 oktober 2009 En wat moet het ongeveer voor gaan stellen? Tevens zie ik niet echt het nut in van 30 maal een ~n~ te zetten als je ook gewoon de positie kan aanpassen. Je mag ook geen spaties gebruiken in TextDraws, elke spatie moet worden voorgesteld met een _ . is dat nieuw? want ik heb altijd gewoon de spatie balk ingedrukt.
Crusher!! Geplaatst: 13 oktober 2009 Rapport Geplaatst: 13 oktober 2009 (bewerkt) Mijn vraag: is nog steeds niet opgelost.... waarom werkt dit niet ?: include <a_samp> include <WX_Phone> new rand[MAX_PLAYERS]; new OnlinePlayers; forward MaakTelefoonNummer(playerid); public OnPlayerDisconnect(playerid) { OnlinePlayers--; return 1; } public OnPlayerConnect(playerid) { OnlinePlayers++; MaakTelefoonNummer(playerid); return 1; } public OnPlayerSpawn(playerid) { new p = playerid; if (rand[p] != WX_GetPlayerPhoneNumber(p); { rand[p] = 0; MaakTelefoonNummer(playerid); } return 1; } public MaakTelefoonNummer(playerid) { new p = playerid; new name[24],string[128]; GetPlayerName(p,name,24); rand[p] = random(OnlinePlayers); rand[p] += random(555); rand[p] += 11111; // als je nouw nog geen goeie mix hebt xD printf("[%d] %s's telefoon nummer is: %d",name,p,rand[p]); WX_SetPlayerPhoneNumber(p,rand[p]); format(string,128,"Your Phone Number is: %d",rand[p]); SendClientMessage(p,YLLW,string); return 1; } Edit: Als jullie de commands moeten hebben zeg dat ff Bewerkt: 13 oktober 2009 door Crusher!!
Big Boss Geplaatst: 13 oktober 2009 Rapport Geplaatst: 13 oktober 2009 (bewerkt) rand[p] = random(sizeof(OnlinePlayers); Dat had ik ook al veel eerder moeten zien, je kan namelijk sizeof enkel gebruiken om de lengte of grootte van strings arrays te weten te komen. rand[p] = random(OnlinePlayers); Bewerkt: 13 oktober 2009 door Big Boss
Crusher!! Geplaatst: 13 oktober 2009 Rapport Geplaatst: 13 oktober 2009 rand[p] = random(OnlinePlayers); Ag je ziet niet alles in 1x Thnx het werkt nu..
Scofield6 Geplaatst: 14 oktober 2009 Rapport Geplaatst: 14 oktober 2009 (bewerkt) Ik probeer de /pm uit de base.pwn in mijn eigen script te krijgen maar ik krijg 2 errors... error 017: undefined symbol "strrest" error 033: array must be indexed (variable "gMessage") public OnPlayerCommandText(playerid, cmdtext[]) { new cmd[256], tmp[256], tmp2[256]; new idx; new string[256]; cmd = strtok(cmdtext, idx); GetPlayerName(playerid, playername, sizeof(playername)); new Message[256]; new gMessage[256]; new pName[MAX_PLAYER_NAME+1]; new iName[MAX_PLAYER_NAME+1]; //----------[PM]---------------------------------------------------------------- if (strcmp("/pm", cmd, true) == 0) { tmp = strtok(cmdtext,idx); if (!strlen(tmp) || strlen(tmp) > 5) { SendClientMessage(playerid,COLOR_RED,"Usage: /pm (id) (message)"); return 1; } new id = strval(tmp); gMessage = strrest(cmdtext,idx); if (!strlen(gMessage)) { SendClientMessage(playerid,COLOR_RED,"Usage: /pm (id) (message)"); return 1; } if (!IsPlayerConnected(id)) { SendClientMessage(playerid,COLOR_RED,"/pm : Bad player ID"); return 1; } if (playerid != id) { GetPlayerName(id,iName,sizeof(iName)); GetPlayerName(playerid,pName,sizeof(pName)); format(Message,sizeof(Message),">> %s(%d): %s",iName,id,gMessage); SendClientMessage(playerid,COLOR_RED,Message); format(Message,sizeof(Message),"** %s(%d): %s",pName,playerid,gMessage); SendClientMessage(id,COLOR_RED,Message); PlayerPlaySound(id,1085,0.0,0.0,0.0); printf("PM: %s",Message); } else { SendClientMessage(playerid,COLOR_RED,"You cannot PM yourself"); } return 1; } Bewerkt: 14 oktober 2009 door Scofield6
JayKay Geplaatst: 20 oktober 2009 Rapport Geplaatst: 20 oktober 2009 (bewerkt) Even een vraagje tussendoor, kan iemand me het verschil uitleggen (het liefst aan de hand van voorbeelden ) tussen deze 4 soorten variabelen en waarvoor en wanneer ze gebruikt worden: new variabele; new variabele[5]; new variabele[MAX_PLAYERS]; new variabele[MAX_PLAYER_NAME]; Thnx! Bewerkt: 20 oktober 2009 door JayKay
Big Boss Geplaatst: 20 oktober 2009 Rapport Geplaatst: 20 oktober 2009 new variabele; new variabele[5]; new variabele[MAX_PLAYERS]; new variabele[MAX_PLAYER_NAME]; Maak integer aan Maak array aan met grootte 5 Maak array aan met grootte 500 Maak array aan met grootte 20 MAX_PLAYERS = 500 MAX_PLAYER_NAME = 20 In een array worden veelal strings (tekst) opgeslagen, maar je kan ook individuele integers op slaan in elke 'cel' van de array. Even een voorbeeldje van Wikipedia geript: Voorbeeld van een array van integers in de programmeertaal C:int array[2]; // Een array met 2 integers (geen van de elementen hebben (nog) een waarde) array[0] = 1; // Geeft het allereerste element in de array waarde 1 array[1] = 3; // Geeft het tweede element in de array waarde 3 Hierbij is de naam van de array "array" en de opgeslagen waarden in de array zijn 1 en 3. Deze waarden zijn nu te gebruiken met behulp van array[0] en array[1]. In sommige programmeertalen (bijvoorbeeld C of PHP) is 0 de index van de eerste waarde in de array, in andere programmeertalen is dit 1. Er zijn ook talen waar men zelf de ondergrens kan bepalen (bijvoorbeeld Perl).
JayKay Geplaatst: 23 oktober 2009 Rapport Geplaatst: 23 oktober 2009 new variabele; new variabele[5]; new variabele[MAX_PLAYERS]; new variabele[MAX_PLAYER_NAME]; Maak integer aan Maak array aan met grootte 5 Maak array aan met grootte 500 Maak array aan met grootte 20 MAX_PLAYERS = 500 MAX_PLAYER_NAME = 20 In een array worden veelal strings (tekst) opgeslagen, maar je kan ook individuele integers op slaan in elke 'cel' van de array. Even een voorbeeldje van Wikipedia geript: Voorbeeld van een array van integers in de programmeertaal C:int array[2]; // Een array met 2 integers (geen van de elementen hebben (nog) een waarde) array[0] = 1; // Geeft het allereerste element in de array waarde 1 array[1] = 3; // Geeft het tweede element in de array waarde 3 Hierbij is de naam van de array "array" en de opgeslagen waarden in de array zijn 1 en 3. Deze waarden zijn nu te gebruiken met behulp van array[0] en array[1]. In sommige programmeertalen (bijvoorbeeld C of PHP) is 0 de index van de eerste waarde in de array, in andere programmeertalen is dit 1. Er zijn ook talen waar men zelf de ondergrens kan bepalen (bijvoorbeeld Perl). Ah ok, dat verklaart al een hoop maar waarom zet je bij MAX_PLAYERS niet gewoon 500 neer dan, is toch een stuk korter? En hoe zit het met array's met 2 argumenten (new variabele[4] [16] zie ik bijv. staan)? Kan je tot slot misschien nog even uitleggen hoe je array's moet gebruiken, dat is namelijk 1 van de onderdelen uit pawno wat ik nog niet snap
Big Boss Geplaatst: 23 oktober 2009 Rapport Geplaatst: 23 oktober 2009 Ah ok, dat verklaart al een hoop maar waarom zet je bij MAX_PLAYERS niet gewoon 500 neer dan, is toch een stuk korter? Ga je gang. Maar weet wel dat als de MAX_PLAYERS verandert, je alles handmatig zal moeten veranderen. En hoe zit het met array's met 2 argumenten (new variabele[4] [16] zie ik bijv. staan)? Dit zijn multi-dimensional arrays en worden vaak gebruikt voor enums (enumeration) bv. #define MAX_PROPERTY 10 enum PROPERTY_INFO { Float:x, Float:y, Float:z }; new PropInfo[MAX_PROPERTY][PROPERTY_INFO]; PropInfo[0][x] = 1852.5156; PropInfo[0][y] = 2597.1525; PropInfo[0][z] = 25.1684; Kan je tot slot misschien nog even uitleggen hoe je array's moet gebruiken, dat is namelijk 1 van de onderdelen uit pawno wat ik nog niet snap // Als string new string[128]; string = "Hello World"; print(string); // of format(string, sizeof(string), "This %s has %d characters", "string", 29); print(string); // Als opslag voor meerdere integers new array[5]; array[0] = CreateObject(...); // voeg object id 0 toe aan de array array[1] = CreateObject(...); array[2] = CreateObject(...); array[3] = CreateObject(...); array[4] = CreateObject(...);
nulop Geplaatst: 8 november 2009 Rapport Geplaatst: 8 november 2009 new spawnlist[] = "1\tBanshee\n2\tBMX\n3\tBloodring\n4\tBullet\n5\tCheetah\n6\tComet\n7\tDinghy\n8\tElegy\n9\tFCR-900\n10\tFreeway\n11\tHotring 1\n12\tHotring 2\n13\tHotring 3\n14\tInfernus\n15\tJester\n16\tMonster\n17\tNRG\n18\tPacker\n19\tPhoenix\n20\tQuad\n21\tSanchez\n22\tSquallo\n23\tStallion\n24\t\Sultan\n25\tTurismo\n26\tVortex\n27\tWindsor\n28\tZR-350"; Geeft error: C:\Documents and Settings\Hidde\Bureaublad\scripting new\gamemodes\martinsnew.pwn(687) : error 027: invalid character constant C:\Documents and Settings\Hidde\Bureaublad\scripting new\gamemodes\martinsnew.pwn(687) : error 027: invalid character constant Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase 2 Errors.
Remi-X Geplaatst: 8 november 2009 Rapport Geplaatst: 8 november 2009 Ergens heb je dan een backslash zonder onderdeel staan. Gewoonlijk heb je \n en \t, maar ergens in jouw stukje moet enkel een \ staan. Dat is wat je moet verbeteren.
Recommended Posts