Jump to content

Jailed


Freaksken

Recommended Posts

Vanboven bij men script:

forward Jailtime();
new Jailpers;

Bij OnGameModeInit:

SetTimer("Jailtime",300000,false);

Bij OnPlayerCommandText:

	
   if(strcmp(cmd, "/jail", true)==0)
   {
   if(!IsPlayerAdmin(playerid)) return 0;
   new giveplayerid;
   Jailpers = giveplayerid;
   tmp = strtok(cmdtext, idx);
   if(!strlen(tmp))
   {
       SendClientMessage(playerid, COLOR_BLUE, "Use: /jail [id]");
       return 1;
   }
   Jailpers = strval(tmp);
   if(!IsPlayerConnected(Jailpers))
   {
       SendClientMessage(playerid, COLOR_GREEN, "Player is not online!"); return 1;
   }
   SetPlayerPos(Jailpers, 3792.5220,3023.9463,2.2903);
   ResetPlayerWeapons(Jailpers);
   ResetPlayerMoney(Jailpers);
   SendClientMessage(playerid, COLOR_WHITE, "Player jailed!");
   SendClientMessage(Jailpers, COLOR_FUCHSIA, "You are jailed by an admin and your money and weapons are resetted!");
   SendClientMessage(Jailpers, COLOR_FUCHSIA, "You are jailed for 5 minutes, just take a look around!");
   GameTextForPlayer(Jailpers, "Jailed for 5 minutes!",2500,3);
   return 1;
   }

Dus mijn probleem is dat ik elke keer automatisch na 5 minuten geunjailed wordt terwijl ik niet gejailed was.

Ik bedoel ik spawn naar de plaats waar je spawnt als je geunjailde wordt.

Bewerkt: door Freaksken
Link to comment
Delen op andere websites

public Jailtime()
{
   SetPlayerPos(Jailpers, 2326.6926,548.6821,7.7813);
   SendClientMessage(Jailpers, COLOR_FUCHSIA, "Your time in jail is over, don't ignore the rules again!");
   GameTextForPlayer(Jailpers, "You are free now!",5000,3);
}

Staat dus onderaan men script hé.

Link to comment
Delen op andere websites

forward Jailtime(playerid);

//  --------------------------------------------------------------------------------------------------------------------------

if(strcmp(cmd, "/jail", true)==0)
{
if(!IsPlayerAdmin(playerid)) return 0;
new giveplayerid;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
	SendClientMessage(playerid, COLOR_BLUE, "Use: /jail [id]");
	return 1;
}
giveplayerid = strval(tmp);
if(!IsPlayerConnected(giveplayerid))
{
	SendClientMessage(playerid, COLOR_GREEN, "Player is not online!"); 
	return 1;
}
SetPlayerPos(giveplayerid, 3792.5220,3023.9463,2.2903);
ResetPlayerWeapons(giveplayerid);
ResetPlayerMoney(giveplayerid);
SendClientMessage(playerid, COLOR_WHITE, "Player jailed!");
SendClientMessage(giveplayerid, COLOR_FUCHSIA, "You are jailed by an admin and your money and weapons are resetted!");
SendClientMessage(giveplayerid, COLOR_FUCHSIA, "You are jailed for 5 minutes, just take a look around!");
GameTextForPlayer(giveplayerid, "Jailed for 5 minutes!",2500,3);
SetTimerEx("Jailtime", 30000, false, "i", giveplayerid);
return 1;
}

//  --------------------------------------------------------------------------------------------------------------------------

public Jailtime(playerid)
{
SetPlayerPos(playerid, 2326.6926,548.6821,7.7813);
SendClientMessage(playerid, COLOR_FUCHSIA, "Your time in jail is over, don't ignore the rules again!");
GameTextForPlayer(playerid, "You are free now!",5000,3);
}

Even herschreven, zo werkt hij waarschijnlijk wel.

Link to comment
Delen op andere websites

forward Ship(playerid);
forward IsPlayerInArea(playerid, Float:minx, Float:maxx, Float:miny, Float:maxy);
forward Shiptime(playerid);
----------------------------------------------------------------------------------------------------------------------------------
SetTimer("Ship",400, 1);
----------------------------------------------------------------------------------------------------------------------------------
IsPlayerInArea(playerid, Float:minx, Float:maxx, Float:miny, Float:maxy)
{
       new Float:x, Float:y, Float:z;
       GetPlayerPos(playerid, x, y, z);
       if (x > minx && x < maxx && y > miny && y < maxy) return 1;
       return 0;
}

public Ship(playerid)
{
   for(new i = 0; i < MAX_PLAYERS; i++)
   {
       if(IsPlayerConnected(i))
       {
           if (IsPlayerInArea(i,1974.312, 1504.199, 2025.075, 1581.56) == 1)
           {
               SetTimer("Shiptime", 1000, 1);
           }
       }
   }
   return 1;
}

public Shiptime(playerid)
{
GivePlayerMoney(playerid, 100);
}

OK, ik denk dus dat ik nu door heb dat ik niks kan van timers, de bedoeling is dus als je in diet gebied bent dat je elke seconde $100 krijgt.

Bewerkt: door Freaksken
Link to comment
Delen op andere websites

SetTimer("Ship", 1000, true); // 1000 ms is 1 seconde

public Ship(playerid)
{
for(new i = 0; i <= MAX_PLAYERS; i++)
{
	if(IsPlayerConnected(i))
	{
		if (IsPlayerInArea(i,1974.312, 1504.199, 2025.075, 1581.56))
		{
			GivePlayerMoney(i, 100);
		}
	}
}
return 1;
}

Link to comment
Delen op andere websites

Ik snap het even niet.

Ik heb 2 timers, die alletwee geforward zijn:

1. Kijkt elke 400 ms of ik in dat gebied ben. (Late we voor de duidelijkheid Schipcheck zeggen)

2. Geeft me om elke seconde $100. (Late we voor de duidelijkheid Schipmoney zeggen)

Ik heb ook het gebied (deuh).

Dat is ook geforward. (Late we voor de duidelijkheid Schiparea zeggen)

Schipcheck staat bij OnGameModeInit.

Schipmoney staat ook bij OnGameModeInit.

Dan heb je nog vanonder dat public Schipcheck ding.

Daar staat de X-min,X-max,Y-min,Y-max van Schiparea in.

Daar staat ook GivePlayerMoney bij.

Dan heb je nog vanonder dat public Schipmoney ding.

Maar wat moet daar dan bij?

Als dit niet klopt, wil je dan aub alles voluit geven.

Ik bedoel alles wat geforward moet worden, alles wat bij OnGameModeInit moet staan, en alls wat vanonder moet staan.

Want nu begrijp ik er geen bal van.

Thanx alvast.

Link to comment
Delen op andere websites

Je hebt maar 1 timer nodig (of een timer per speler in OnPlayerSpawn).

De timer checkt of je in dat gebied bent, en als dat zo is krijg je 100 dollar. Gezien het feit dat de timer in een loop staat heb je dat Shipmoney geval niet nodig.

Link to comment
Delen op andere websites

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...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...