Jump to content
Geplaatst:
comment_1856967

Hey ik heb een vehicle systeem proberen te scripten alleen het gaat nog niet helemaal goed er zitten 2 errors in die zijn van andere commands 2 /kill en /help eerst waren die wel goed..

Code:

if (strcmp("/help", cmdtext, true, 5) == 0);

{

SendClientMessage(playerid, COLOR_YELLOW, "(INFO) Welkom op deze Server!");

SendClientMessage(playerid, COLOR_YELLOW, "(INFO) Heb je vragen? vraag dat aan een admin!");

}

if (strcmp("/kill", cmdtext, true, 5) == 0);

{

SetPlayerHealth(playerid, 0);

SendClientMessage(playerid, COLOR_GREEN, "(INFO) Je hebt zelfmoord gepleegt!");

Errors:

C:\Users\Stefan\Downloads\samp03csvr_R2-2_win32\gamemodes\StefanScript.pwn(212) : error 010: invalid function or declaration

C:\Users\Stefan\Downloads\samp03csvr_R2-2_win32\gamemodes\StefanScript.pwn(217) : error 010: invalid function or declaration

Bewerkt: door Stef2n

Featured Replies

Geplaatst:
comment_1856979

Wat betreft je eerste vraag: dat komt waarschijnlijk doordat je de camerapositie niet hebt ingesteld of niet hebt gelijkgesteld aan de positie waar je de speler selecteert. Voor je tweede probleem zou ik toch even kijken bij een van Sandra's tutorials, namelijk deze. Daar legt ze haarfijn uit hoe je zo'n systeem maakt. Ook voor je derde vraag heeft zij - meende ik - ook een tutorial geschreven, maar ik raad je aan eerst de basis van het scripten onder de knie te krijgen, alvorens je je aan de grotere systemen gaat wagen.

Geplaatst:
comment_1857141

Bij een if eindig je nooit met een ; (tenzij je de brackets weglaat wanneer het mogelijk is maar doe dat maar als je dit allemaal kan). Je moet bij deze 2 ifs dus gewoon de ; weghalen en ze werken. Overigens moet je bij die 2de nog een } zetten maar dit zal vast wel door het kopieren zijn weggevallen.

Geplaatst:
  • Auteur
comment_1857153

Ik heb nu dit met die ; weg maar hij geeft nog steeds de zelfde error bij mij.

if (strcmp("/help", cmdtext, true, 5) == 0)

{

SendClientMessage(playerid, COLOR_YELLOW, "(INFO) Welkom op deze Server!");

SendClientMessage(playerid, COLOR_YELLOW, "(INFO) Heb je vragen? vraag dat aan een admin!");

}

if (strcmp ("/kill", cmdtext, true, 5) == 0)

{

SetPlayerHealth(playerid, 0);

SendClientMessage(playerid, COLOR_GREEN, "(INFO) Je hebt zelfmoord gepleegt!");

}

}

Geplaatst:
comment_1857224

	if (strcmp("/help", cmdtext, true, 5) == 0)
{
  SendClientMessage(playerid, COLOR_YELLOW, "(INFO) Welkom op deze server!");
  SendClientMessage(playerid, COLOR_YELLOW, "(INFO) Heb je vragen? Vraag dat aan een admin.");
return 1;
     }
if (strcmp("/kill", cmdtext, true, 5) == 0)
  SetPlayerHealth(playerid, 0);
  SendClientMessage(playerid, COLOR_GREEN, "(INFO) Je hebt zelfmoord gepleegt!");
return 1;
      }

Zo zou die het moeten doen.

P.S; Een command eindigt altijd met

return 1;
}

Bewerkt: door VWO-er

Geplaatst:
comment_1857241

P.S; Een command eindigt altijd met

return 1;
}

Fout het is niet verplicht maar wel beter aangezien hij anders de andere if's nog zal afgaan, maar sowieso raad ik strcmp al af voor commands.

Geplaatst:
  • Auteur
comment_1857267

Het lukt nog steeds niet dit is mijn hele command script:

public OnPlayerCommandText(playerid, cmdtext[])
{
     new cmd[128], tmp[128], string[265], idx;
       cmd = strtok(cmdtext, idx);

if(!strcmp(cmd, "/vec", true))
{
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
		SendClientMessage(playerid, COLOR_WHITE, "GEBRUIK: /vec [voertuig ID]");
		return 1;
	}
	new vecid = strval(tmp);
	if(vecid >= 400 && vecid <= 611)
	{
	    if(IsPlayerAdmin(playerid) == 1)
	    {
	        if(PlayerInfo[playerid][pCarSpawned] == 1)
	        {
				DestroyVehicle(PlayerInfo[playerid][pCarSpawnedID]);
				PlayerInfo[playerid][pCarSpawned] = 0;
				PlayerInfo[playerid][pCarSpawnedID] = (-1);
			}
			new Float:pX, Float:pY, Float:pZ, Float: pA;
			GetPlayerPos(playerid, pX, pY, pZ); GetPlayerFacingAngle(playerid, pA);
			PlayerInfo[playerid][pCarSpawned] = 1;
			PlayerInfo[playerid][pCarSpawnedID] = CreateVehicle(vecid, pX, pY, pZ, pA, -1, -1, 900);
			PutPlayerInVehicle(playerid, PlayerInfo[playerid][pCarSpawnedID], 0);
			format(string, sizeof string, "Je hebt een voertuig gespawnd, Model: %d, ID: %d", vecid, PlayerInfo[playerid][pCarSpawnedID]);
			SendClientMessage(playerid, COLOR_RED, string);
			return 1;
		}
		else
		{
		    SendClientMessage(playerid, COLOR_RED, "Je bent geen administrator!");
		}
	}
	else
	{
	    SendClientMessage(playerid, COLOR_RED, "Voertuig Model moet boven 400 zijn en onder 611!");
	}
	return 1;
}
return 0;
}

strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
	index++;
}

new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
	result[index - offset] = string[index];
	index++;
}
result[index - offset] = EOS;
return result;
}
    if (strcmp("/help", cmdtext, true, 5) == 0)
       {
         SendClientMessage(playerid, COLOR_YELLOW, "(INFO) Welkom op deze server!");
         SendClientMessage(playerid, COLOR_YELLOW, "(INFO) Heb je vragen? Vraag dat aan een admin.");
       return 1;
     }
       if (strcmp("/kill", cmdtext, true, 5) == 0)
         SetPlayerHealth(playerid, 0);
         SendClientMessage(playerid, COLOR_GREEN, "(INFO) Je hebt zelfmoord gepleegt!");
       return 1;
      }
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}

Geplaatst:
comment_1857555

public OnPlayerCommandText(playerid, cmdtext[])
{
     new cmd[128], tmp[128], string[265], idx;
       cmd = strtok(cmdtext, idx);

if(!strcmp(cmd, "/vec", true))
{
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
		SendClientMessage(playerid, COLOR_WHITE, "GEBRUIK: /vec [voertuig ID]");
		return 1;
	}
	new vecid = strval(tmp);
	if(vecid >= 400 && vecid <= 611)
	{
	    if(IsPlayerAdmin(playerid) == 1)
	    {
	        if(PlayerInfo[playerid][pCarSpawned] == 1)
	        {
				DestroyVehicle(PlayerInfo[playerid][pCarSpawnedID]);
				PlayerInfo[playerid][pCarSpawned] = 0;
				PlayerInfo[playerid][pCarSpawnedID] = (-1);
			}
			new Float:pX, Float:pY, Float:pZ, Float: pA;
			GetPlayerPos(playerid, pX, pY, pZ); GetPlayerFacingAngle(playerid, pA);
			PlayerInfo[playerid][pCarSpawned] = 1;
			PlayerInfo[playerid][pCarSpawnedID] = CreateVehicle(vecid, pX, pY, pZ, pA, -1, -1, 900);
			PutPlayerInVehicle(playerid, PlayerInfo[playerid][pCarSpawnedID], 0);
			format(string, sizeof string, "Je hebt een voertuig gespawnd, Model: %d, ID: %d", vecid, PlayerInfo[playerid][pCarSpawnedID]);
			SendClientMessage(playerid, COLOR_RED, string);
			return 1;
		}
		else
		{
		    SendClientMessage(playerid, COLOR_RED, "Je bent geen administrator!");
		}
	}
	else
	{
	    SendClientMessage(playerid, COLOR_RED, "Voertuig Model moet boven 400 zijn en onder 611!");
	}
	return 1;
}
    if (strcmp("/help", cmdtext, true, 5) == 0)
       {
         SendClientMessage(playerid, COLOR_YELLOW, "(INFO) Welkom op deze server!");
         SendClientMessage(playerid, COLOR_YELLOW, "(INFO) Heb je vragen? Vraag dat aan een admin.");
       return 1;
     }
       if (strcmp("/kill", cmdtext, true, 5) == 0)
         SetPlayerHealth(playerid, 0);
         SendClientMessage(playerid, COLOR_GREEN, "(INFO) Je hebt zelfmoord gepleegt!");
       return 1;
      }
return 0;
}

strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
	index++;
}

new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
	result[index - offset] = string[index];
	index++;
}
result[index - offset] = EOS;
return result;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
return 1;
}

Doet die het zo ? ^

Bewerkt: door VWO-er

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

Recent actief 0

  • Er zijn hier geen geregistreerde gebruikers aanwezig.