Jump to content
Geplaatst:
comment_1253828

Ik ben bezig met het maken van een server en wil graag teams maken

Ik heb al alles eraan gedaan om commands te maken. Je kan als je /werk_taxi doet taxi worden en nog zo een paar dingen. Maar als je dat hebt getypt spawn je alleen nog maar naar de juiste plaats en kan eigenlijk niks behalve in een taxi rijden... Ik wil graag weten hoe ik een team kan maken waardoor ik commands kan maken voor een taxi chauffeur, DIE ALLEEN EEN TAXI KAN GEBRUIKEN EN NIEMAND ANDERS. Mijn vraag is dus hoe kan ik een team maken, waardoor ik commands kan maken voor alleen taxi's en bijvoorbeeld auto's maken waar zij alleen in kunnen

CAR

Featured Replies

Geplaatst:
comment_1254036

Dit is een voorbeeld

//Bovenaan script:

#define JOB_NONE 0
#define JOB_TAXI 1
#define JOB_POLICE 2
#define JOB_PILOT 3
//voeg eventueel zelf meer toe. (De volgende krijgt uiteraard nummer '4', daarna '5' enzovoort.

new gTeam[MAX_PLAYERS];

//OnPlayerConnect(playerid)

gTeam[playerid] = JOB_NONE

//OnPlayerCommandText(playerid, cmdtext[])

if(strcmp(cmdtext, "/werk_taxi", true)==0)
{
gTeam[playerid] = JOB_TAXI;
SetPlayerPos(playerid, bla, bla, bla);
SendClientMessage(playerid, 0x00FF00AA, "Je bent nu taxi-chauffeur!");
return 1;
}

Om nu commands te maken die alleen door taxichauffeurs te gebruiken zijn, gebruik je de check:

if(strcmp(cmdtext, "/blablabla", true)==0)
{
if(gTeam[playerid] == JOB_TAXI)
{
	//De rest van het taxi-only commando
}
return 1;
}

Succes!

Bewerkt: door =>Sandra<=

Geplaatst:
  • Auteur
comment_1254984

bedankt alleen zegt hij nu dit: als ik compile,

error 017: undefined symbol "gTeam"

warning 215: expression has no effect

error 001: expected token: ";", but found "]"

error 029: invalid expression, assumed zero

fatal error 107: too many error messages on one line

Allemaal op deze regel:

if (strcmp("/werk_taxi", cmdtext, true, 10) == 0)

{

gTeam[playerid] = JOB_TAXI;

SetPlayerSkin(playerid,61);

SetPlayerPos(playerid,1219.0601,-1811.7385,16.5938);

SetPlayerInterior(playerid,0);

SendClientMessage(playerid,0xFFFF00,"je bent nu taxichauffeur!");

return 1;

}

Dit heb ik nu dus:

#include <a_samp>

// This is a comment

// uncomment the line below if you want to write a filterscript

//#define FILTERSCRIPT

#if defined FILTERSCRIPT

#define JOB_NONE 0

#define JOB_TAXI 1

#define JOB_POLICE 2

#define JOB_PILOT 3

new gTeam[MAX_PLAYERS];

static gTeam[MAX_PLAYERS];

public OnFilterScriptInit()

{

print("\n--------------------------------------");

print("test");

print("--------------------------------------\n");

return 1;

}

public OnFilterScriptExit()

{

return 1;

}

#else

main()

{

print("\n----------------------------------");

print("test gamemode");

print("----------------------------------\n");

}

#endif

public OnGameModeInit()

{

// Don't use these lines if it's a filterscript

SetGameModeText("Blank Script");

return 1;

}

public OnGameModeExit()

{

return 1;

}

public OnPlayerRequestClass(playerid, classid)

{

SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);

SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);

SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);

AddStaticVehicle(451,1319.4690,-873.4993,39.2877,0.0132,36,36);

AddStaticVehicle(415,1325.0470,-873.4893,39.3492,176.9828,25,1);

return 1;

}

// deze heb ik voor het bericht verwijderd

public OnPlayerCommandText(playerid, cmdtext[])

{

if (strcmp("/werk_vuilnisman", cmdtext, true, 10) == 0)

{

SetPlayerSkin(playerid,16);

SetPlayerPos(playerid,2090.2385,-2027.1798,13.5469);

SetPlayerInterior(playerid,0);

SendClientMessage(playerid,0xFFFF00,"Je bent nu een vuilnisman");

return 1;

}

if (strcmp("/werk_taxi", cmdtext, true, 10) == 0)

{

gTeam[playerid] = JOB_TAXI;

SetPlayerSkin(playerid,61);

SetPlayerPos(playerid,1219.0601,-1811.7385,16.5938);

SetPlayerInterior(playerid,0);

SendClientMessage(playerid,0xFFFF00,"je bent nu taxichauffeur!");

return 1;

}

if (strcmp("/werk_brandweer", cmdtext, true, 10) == 0)

{

SetPlayerSkin(playerid,279);

SetPlayerPos(playerid,1751.8982,-1447.6161,13.5391);

SetPlayerInterior(playerid,0);

SendClientMessage(playerid,0xFFFF00,"Je bent nu een brandweerman");

return 1;

}

if (strcmp("/werk_politie", cmdtext, true, 10) == 0)

{

SetPlayerSkin(playerid,280);

SetPlayerPos(playerid,1553.1356,-1675.8766,16.1953);

SetPlayerInterior(playerid,0);

SendClientMessage(playerid,0xFFFF00,"Je bent nu een politieman");

return 1;

}

if (strcmp("/werk_ambulance", cmdtext, true, 10) == 0)

{

SetPlayerSkin(playerid,276);

SetPlayerPos(playerid,1176.7869,-1323.3712,14.0385);

SetPlayerInterior(playerid,0);

SendClientMessage(playerid,0xFFFF00,"Je hebt nu een baan bij het ziekenhuis");

return 1;

}

return 0;

}

Bewerkt: door CAR

Geplaatst:
comment_1255358
bedankt alleen zegt hij nu dit: als ik compile,

error 017: undefined symbol "gTeam"

warning 215: expression has no effect

error 001: expected token: ";", but found "]"

error 029: invalid expression, assumed zero

fatal error 107: too many error messages on one line

even bovenaan je script dit toevoegen.

static gTeam[MAX_PLAYERS];

Geplaatst:
comment_1258526

Nee, hij had al

new gTeam[MAX_PLAYERS];

staan.

Het probleem is dat je dat new gTeam[MAX_PLAYERS]; onder de "#if defined FILTERSCRIPT" check hebt gezet.

"FILTERSCRIPT" is niet gedefinieerd en daarom word die new gTeam[MAX_PLAYERS] overgeslagen en veroorzaakt die errors.

Ik neem aan dat je dat script als gamemode gebruikt, dus je kan beter even deze regels verwijderen.

Let Op: Echt alleen de regels die ik nu aan zal geven, verwijder niet meer dan dat:

// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT

#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
print("\n--------------------------------------");
print("test");
print("--------------------------------------\n");
return 1;
}

public OnFilterScriptExit()
{
return 1;
}

#else

#endif

Dat kan je dus allemaal verwijderen, dan is je script weer wat overzichtelijker en voorkomt foutjes in de toekomst ;)

Succes!

Geplaatst:
  • Auteur
comment_1258961
Nee, hij had al
new gTeam[MAX_PLAYERS];

staan.

Het probleem is dat je dat new gTeam[MAX_PLAYERS]; onder de "#if defined FILTERSCRIPT" check hebt gezet.

"FILTERSCRIPT" is niet gedefinieerd en daarom word die new gTeam[MAX_PLAYERS] overgeslagen en veroorzaakt die errors.

Ik neem aan dat je dat script als gamemode gebruikt, dus je kan beter even deze regels verwijderen.

Let Op: Echt alleen de regels die ik nu aan zal geven, verwijder niet meer dan dat:

// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT

#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
print("\n--------------------------------------");
print("test");
print("--------------------------------------\n");
return 1;
}

public OnFilterScriptExit()
{
return 1;
}

#else

#endif

Dat kan je dus allemaal verwijderen, dan is je script weer wat overzichtelijker en voorkomt foutjes in de toekomst ;)

Succes!

ok, maar heb het wel als filterscript gedaan anders deden /werk_taxi enzo het niet....

Hoe maak ik nu auto's en command's alleen voor taxi chauffeurs??

Bewerkt: door CAR

Geplaatst:
comment_1261421
ok, maar heb het wel als filterscript gedaan anders deden /werk_taxi enzo het niet....

Hoe maak ik nu auto's en command's alleen voor taxi chauffeurs??

door de regel

    if(gTeam[playerid] == JOB_TAXI)

toetevoegen voorbeeld: zie onder

een /taxiad cmd dit stuurt een bericht van: Taxiservice: Need a Taxi Contact CAR.

if(strcmp(cmdtext, "/taxiad", true)==0)
{
   if(gTeam[playerid] == JOB_TAXI)
   {
       new pName[MAX_PLAYER_NAME];
       new string[128];
       GetPlayerName(playerid, pName, sizeof(pName));
       format(string, sizeof(string), "Taxiservice: Need a Taxi Contact %s.
       ", pName);
       SendClientMessageToAll(0xFFFF80FF, string);
   }
   return 1;
}

Bewerkt: door jorD1

Geplaatst:
  • Auteur
comment_1261480
ok, maar heb het wel als filterscript gedaan anders deden /werk_taxi enzo het niet....

Hoe maak ik nu auto's en command's alleen voor taxi chauffeurs??

door de regel

	if(gTeam[playerid] == JOB_TAXI)

Waar moet ik deze neerzetten??

Geplaatst:
comment_1261581
ok, maar heb het wel als filterscript gedaan anders deden /werk_taxi enzo het niet....

Hoe maak ik nu auto's en command's alleen voor taxi chauffeurs??

door de regel

	if(gTeam[playerid] == JOB_TAXI)

Waar moet ik deze neerzetten??

kijk mijn /taxiad ding maar heel goed door.

PS. die /taxiad mag je zo in je GM/FS zette ik heb hem net heel snel speciaal voor post gemaakt (is niet getest)

Bewerkt: door jorD1

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.