Wie kann man das machen, wenn man Wanted hat, und von einem Cop (Frak ID 1) getötet wird, ins Knast landet, ich hab ein Selmade script.
Wanted -> Cop tötet ihn -> Knast
- xBuRaK95x
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Abfrage ob die KillerID ein Cop ist
Wenn dies zutrifft abfragen ob der Spieler wanteds hat,
wenn ja einfach im knast spawnen lassen. -
Versteh ich nicht
-
ja kommt drauf an wie deine variabeln lauten.... GF ZB
if(PlayerInfo[killerid][pMember] == 1)
{
if(PlayerInfo[playerid][pWantedlevel] > 0)
{
Hier kannste ihn in knast stecken...
SetPlayerPos(playerid....
}
} -
Habe aber Selfmade
-
ja dann musste schon sagen wie deine variabel lautet für Die Spieler Informationen... bzw PlayerInfo[playerid][pWantedLevel] ... ist gleich GetPlayerWantedLevel(playerid);
-
einfach mal mehr informationen geben wie du es definiert hast, sonst können wir dir auch nicht weiterhelfen.
-
Habe aber Selfmade
ein Selfmade, Selfmade
oder
ein Selfmade, runtergeladen aber kein GF?
-
Ein selfmade, ganz selbst gemacht...
-
Naja mit deinen Erfahrungen würde ich sagen, du hast Selfmade runtergelanden und dann einfach editiert -.-´
Wie oben schon gesagt, einfach KillerID abfragen dann die Wantedanzahl von dem Spieler und dann im Knast spawnen lassen mit InteriorID.
lg
pS
-
Hallo Keyboy,
Du verstehst da was falsch.
Fußboden will nicht wissen ob du ein Gf oder Selfmade hast.
Sonder er will dein Variablen wissen die du Definiert hast.
Er hat ja schon ein beispil vorgegeben. Ich selber weiß auch nicht wie man so ein Wanted dings bums scriptet.
Daher kann ich dir auch nicht wirklich helfen. Fakt ist aber das Fußboden einer der Erfahresten hier ist also
schau mal in dein Script wie deine Variablen heißen bzw Definiert sind und Poste sie. Ansonsten poste dein Script einfach mal bei Pastebin und stelle den Link mit in den Tread. Dann kann Fußboden nach den Variablen schaun. Denn wenn Fußboden die Variablen von dir nicht weiß kann er auch nicht Helfen so leit es ihm tut.Mfg
Ps. Scrips Runderladen und weiter Scripten ist was für den Ar... egal ob es ein Selfmade ist oder ein Gf. Selber machen ist 1.) Schöner und 2.) Lernste dabei auch mehr.
-
Ich verstehe ecuh niht ganz...
-
Hallo Keyboy,
Du verstehst da was falsch.
Fußboden will nicht wissen ob du ein Gf oder Selfmade hast.
Sonder er will dein Variablen wissen die du Definiert hast.
Er hat ja schon ein beispil vorgegeben. Ich selber weiß auch nicht wie man so ein Wanted dings bums scriptet.
Daher kann ich dir auch nicht wirklich helfen. Fakt ist aber das Fußboden einer der Erfahresten hier ist also
schau mal in dein Script wie deine Variablen heißen bzw Definiert sind und Poste sie. Ansonsten poste dein Script einfach mal bei Pastebin und stelle den Link mit in den Tread. Dann kann Fußboden nach den Variablen schaun. Denn wenn Fußboden die Variablen von dir nicht weiß kann er auch nicht Helfen so leit es ihm tut.Mfg
Ps. Scrips Runderladen und weiter Scripten ist was für den Ar... egal ob es ein Selfmade ist oder ein Gf. Selber machen ist 1.) Schöner und 2.) Lernste dabei auch mehr.
was willst du mir mit dem text sagen?
-
Also das ist ganz einfach.
OnPlayerDeath(playerid,killerid)
{
for(new i = 0; i < GetMaxPlayers(); i++)
{
if(killerid == Dann z.B. IstEinCop(i) && PlayerHatWanteds(playerid)) //IstEinCop(i) und PlayerHatWanteds(playerid) definieren bzw. ändern wie du es hast.
{
SetPlayerPos(....); //Koordinaten in Knast.
PlayerImKnast[playerid] = 1; //Definieren
//... Die Sachen die noch reinsollen...
}
}
return 1;
}Ist halt bei nem Selfmade anders
-
äm für was brauchst du da bitte ne schleife?
die beiden variablen sind doch da das ist einmal playerid ( die id des gekillten)
killerid (die id des mörders)das heißt
public OnPlayerDeath(playerid,killerid)
{
if(killerid == "IsACop")
{
SetPlayerPos(playerid,X,Y,Z);
SetPlayerInterior(playerid,intid);
}
} -
Gaaanz einfach ich habs mir auch selbstgemacht (*hust* xD)
forward Knastzeitstart1(playerid); // Wenn der Spieler 1 Wanted hat
forward Knastzeitstart2(playerid); // Wenn der Spieler 2 Wanteds hat
forward Knastzeitstart3(playerid); // Wenn der Spieler 3 Wanteds hat
forward Knastzeitstart4(playerid); // Wenn der Spieler 4Wanteds hat
forward Knastzeitstart5(playerid); // Wenn der Spieler 5 Wanteds hat
forward Knastzeitstart6(playerid); // Wenn der Spieler 6 Wanteds hat
forward Knastzeitende(playerid); // Wenn die Knastzeit zuende ist...Unter OnPlayerDeath:
if(GetPlayerWantedLevel(playerid) == 1)
{
SetTimerEx("Knastzeitstart1", 1,false, "d", playerid);
return 1;
}
if(GetPlayerWantedLevel(playerid) == 2)
{
SetTimerEx("Knastzeitstart2", 1,false, "d", playerid);
return 1;
}
if(GetPlayerWantedLevel(playerid) == 3)
{
SetTimerEx("Knastzeitstart3", 1,false, "d", playerid);
return 1;
}
if(GetPlayerWantedLevel(playerid) == 4)
{
SetTimerEx("Knastzeitstart4", 1,false, "d", playerid);
return 1;
}
if(GetPlayerWantedLevel(playerid) == 5)
{
SetTimerEx("Knastzeitstart5", 1,false, "d", playerid);
return 1;
}
if(GetPlayerWantedLevel(playerid) == 6)
{
SetTimerEx("Knastzeitstart6", 1,false, "d", playerid);
return 1;
}Und gaaanz unten die Publics:
public Knastzeitstart1(playerid) //Der Timer für den Spieler
{
TogglePlayerControllable(playerid,0);
GivePlayerHealth(playerid, 50);
SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
SetPlayerInterior(playerid,6);
ResetPlayerWeapons(playerid);
SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 60 Sekunden verhaftet!");
SetTimerEx("Knastzeitende",60*1000, false, "d", playerid);
new name[MAX_PLAYER_NAME], string[44];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s wurde verhaftet!",name);
SendClientMessageToAll(COLOR_RED, string);
GivePlayerMoney(playerid, -150);
if(SpielerInfo[playerid][Firma] == 1)
{
GivePlayerMoney(playerid, 50);
return 1;
}
return 1;
}public Knastzeitstart2(playerid) //Der Timer für den Spieler
{TogglePlayerControllable(playerid,0);
GivePlayerHealth(playerid, 50);
SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
SetPlayerInterior(playerid,6);
ResetPlayerWeapons(playerid);
SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 120 Sekunden verhaftet!");
SetTimerEx("Knastzeitende",120*1000, false, "d", playerid);
new name[MAX_PLAYER_NAME], string[44];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s wurde verhaftet!",name);
SendClientMessageToAll(COLOR_RED, string);
GivePlayerMoney(playerid, -150);
if(SpielerInfo[playerid][Firma] == 1)
{
GivePlayerMoney(playerid, 50);
return 1;
}
return 1;
}public Knastzeitstart3(playerid) //Der Timer für den Spieler
{TogglePlayerControllable(playerid,0);
GivePlayerHealth(playerid, 50);
SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
SetPlayerInterior(playerid,6);
ResetPlayerWeapons(playerid);
SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 180 Sekunden verhaftet!");
SetTimerEx("Knastzeitende",180*1000, false, "d", playerid);
new name[MAX_PLAYER_NAME], string[44];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s wurde verhaftet!",name);
SendClientMessageToAll(COLOR_RED, string);
GivePlayerMoney(playerid, -150);
if(SpielerInfo[playerid][Firma] == 1)
{
GivePlayerMoney(playerid, 50);
return 1;
}
return 1;
}public Knastzeitstart4(playerid) //Der Timer für den Spieler
{TogglePlayerControllable(playerid,0);
GivePlayerHealth(playerid, 50);
SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
SetPlayerInterior(playerid,6);
ResetPlayerWeapons(playerid);
SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 240 Sekunden verhaftet!");
SetTimerEx("Knastzeitende",240*1000, false, "d", playerid);
new name[MAX_PLAYER_NAME], string[44];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s wurde verhaftet!",name);
SendClientMessageToAll(COLOR_RED, string);
GivePlayerMoney(playerid, -150);
if(SpielerInfo[playerid][Firma] == 1)
{
GivePlayerMoney(playerid, 50);
return 1;
}
return 1;
}public Knastzeitstart5(playerid) //Der Timer für den Spieler
{TogglePlayerControllable(playerid,0);
GivePlayerHealth(playerid, 50);
SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
SetPlayerInterior(playerid,6);
ResetPlayerWeapons(playerid);
SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 300 Sekunden verhaftet!");
SetTimerEx("Knastzeitende",300*1000, false, "d", playerid);
new name[MAX_PLAYER_NAME], string[44];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s wurde verhaftet!",name);
SendClientMessageToAll(COLOR_RED, string);
GivePlayerMoney(playerid, -150);
if(SpielerInfo[playerid][Firma] == 1)
{
GivePlayerMoney(playerid, 50);
return 1;
}
return 1;
}public Knastzeitstart6(playerid) //Der Timer für den Spieler
{TogglePlayerControllable(playerid,0);
GivePlayerHealth(playerid, 50);
SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
SetPlayerInterior(playerid,6);
ResetPlayerWeapons(playerid);
SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 360 Sekunden verhaftet!");
SetTimerEx("Knastzeitende1",360*1000, false, "d", playerid);
new name[MAX_PLAYER_NAME], string[44];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s wurde verhaftet!",name);
SendClientMessageToAll(COLOR_RED, string);
GivePlayerMoney(playerid, -150);
if(SpielerInfo[playerid][Firma] == 1)
{
GivePlayerMoney(playerid, 50);
return 1;
}
return 1;
}public Knastzeitende(playerid) //Der Timer für den Spieler
{
new string[50];
SetPlayerWantedLevel(playerid, 0);
TogglePlayerControllable(playerid,1); //Entfreezed den Spieler
SetPlayerPos(playerid,1552.4564,-1675.8525,16.1953);
SetPlayerInterior(playerid, 0);
format(string, sizeof(string), "~g~ Freiheit ~h~ Sei nun ein besserer Zivilist");
GameTextForPlayer(playerid, string, 3000, 1);
return 1;
}Nur kommt der Spieler dann in den Knast wenn er stirbt... nicht nur wenn ihn ein Cop tötet.
Ich hoffe du kannst das gebrauchen
MfG;
Honig. -
Wie wäre es, wenn du es einfach so machst:
SetTimer("Knastzeit",ZEIT,0);
So ist es viel eichfacher, du musst nur ein Public erstellen.
forward Knastzeit(playerid);
if(GetPlayerWantedLevel(playerid) == 1)
{
SetTimer("Knastzeit",Zeit,0);
return 1;
}
if(GetPlayerWantedLevel(playerid) == 2)
{...
public Knastzeit(playerid)
{
TogglePlayerControllable(playerid,0);
GivePlayerHealth(playerid, 50);
SetPlayerPos(playerid,264.4514,77.2993,1001.0391);
SetPlayerInterior(playerid,6);
ResetPlayerWeapons(playerid);
SendClientMessage(playerid, COLOR_YELLOW, "Du wurdest für 60 Sekunden verhaftet!");
new name[MAX_PLAYER_NAME], string[44];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "%s wurde verhaftet!",name);
SendClientMessageToAll(COLOR_RED, string);
GivePlayerMoney(playerid, -150);
if(SpielerInfo[playerid][Firma] == 1)
{
GivePlayerMoney(playerid, 50);
return 1;// Dieses Return ist überflüssig!
}
return 1;
}MfG Waoler
-
!Schon klar, aber dann wird der Spieler doch bei egal wievielen Wanteds immer für 60 Sekunden verhaftet oder? ;D
-
Nein. Du kannst ja mit if(GetPlayerWantedLevel(playerid) == 1)
{
SetTimer("Knastzeit",Zeit,0);
return 1;
}
if(GetPlayerWantedLevel(playerid) == 2)
{... Immer für alle Wanteds alles definieren. Wenn er 1 Wanted level hat usw.
Bei Wanted1=SetTimer("Knastzeit",30000,0);
bei 2=SetTimer("Knastzeit",60000,0);
usw.
Verstanden? Oder soll ich noch genauer erklären?MfG Waoler
-
Jo, verstanden. Danke dir
-
breadfish.de
Hat das Thema geschlossen.