if(pickupid==gangheal)
{
SetPlayerHealth(playerid,100);
GameTextForPlayer(playerid, "~w~Erfolgreich Geheilt", 5000, 2);
}
if(pickupid==gangarmor)
{
SetPlayerArmour(playerid,100);
}
Hast bei beiden die playerid vergessen
if(pickupid==gangheal)
{
SetPlayerHealth(playerid,100);
GameTextForPlayer(playerid, "~w~Erfolgreich Geheilt", 5000, 2);
}
if(pickupid==gangarmor)
{
SetPlayerArmour(playerid,100);
}
Hast bei beiden die playerid vergessen
ja du kannst deinen PC sicherlich aufrüsten aber ich gebe dir einen tipp geh zu einem Computergeschäft nicht zu Media Markt Saturn weil da zahlt man viel zu viel für den Namen.....
und beim pc aufrüsten oder selber zusammen bauen musst du sehr gut aufpassen weil es leicht passieren kann das die einzelnen teile nicht zusammen passen und dann ist er schlechter als dein alter
wenn er überhaupt funkt.....
Ich selbst habe meinen PC bei einem Computergeschäft gekauft für 530€ und kann jedes Spiel was auf dem Markt ist mit höchster Leistung zocken. Muss nur mit der Kantenklätung aufpassen und der gleich starke Rechner von mir hätte beim Media Markt 1200€ gekostet also da sieht man den großen Unterschied
MfG
füge das einfach hinzu:
if(IsPlayerInAnyVehicle(playerid))
{
SetVehiclePos(GetPlayerVehicleID(playerid), X+5, Y+5, Z);
}
else
{
SetPlayerPos(playerid, X+5, Y+5, Z);
}
hier:ocmd:veh(playerid,params[])
{
if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
new veh, color1, color2, string[200];
new Float:X, Float: Y, Float: Z;
if(sscanf(params,"iii",veh, color1, color2))return SendClientMessage(playerid,COLOR_YELLOW,"Verwendung: /veh [car][color1][color2][color3]");
format(string,sizeof(string),"**Du hast dir erfolgreich das Fahrzeug mit der ID %d gespawnt!**",veh);
SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
GetPlayerPos(playerid,X,Y,Z);
CreateVehicle(veh,X+5,Y+5,Z+2,0.0,color1,color2,0);
return 1;
}
zur ersten Frage: hab ihn aber mit ocmd gemacht weil ich das einfach besser finde also müsstest du "include ocmd" und unten scanf hinzufügen oder ihn umschreiben
ocmd:showscheinplayer(playerid,params[])
{
new pid, string[128];
if(sscanf(params,"u",pid))return SendClientMessage(playerid,COLOR_YELLOW,"Verwendung: /armykills: anzahl");
if(!IsPlayerConnected(pid))return SendClientMessage(playerid,COLOR_RED,"Dieser Spieler existiert nicht!");
format(string,sizeof(string),"Du hast %s erfolgreich deine Scheine gezeigt!",SpielerName(pid));
SendClientMessage(playerid,COLOR_GREEN,string);
{
new x_schein[256];
x_schein = strtok(cmdtext, idx);
if(!strlen(x_schein))
{
SendClientMessage(pid, COLOR_TUTBLAU, "|~~~~~~~~~~~~~~~~~~~~~~~| Scheine |~~~~~~~~~~~~~~~~~~~~~~~");
SendClientMessage(pid, COLOR_WHITE, "Benutze: /showschein [PlayerID] [Schein]");
SendClientMessage(pid, COLOR_GREY, "Führerschein = (Autoführerschein, Motorradschein, LKWschein).");
SendClientMessage(pid, COLOR_GREY, "Flugschein.");
SendClientMessage(pid, COLOR_GREY, "Bootschein = (Bootsschein, Angelschein)");
SendClientMessage(pid, COLOR_GREY, "Waffenschein.");
//SendClientMessage(playerid, COLOR_GREY, ".");
SendClientMessage(playerid, COLOR_TUTBLAU, "|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|");
return 1;
}
else if(strcmp(x_schein,"Führerschein",true) == 0)
{
return 1;
}
else if(strcmp(x_schein,"Flugschein",true) == 0)
{
return 1;
}
else if(strcmp(x_schein,"Bootschein",true) == 0)
{
return 1;
}
else if(strcmp(x_schein,"Waffenschein",true) == 0)
{
return 1;
}
}
return 1;
}
und unten machst du ein stock damit du nicht bei jeden Befehl GetPlayerName machen musst sondern einfach SpielerName(playeird bzw pid) schreibst
stock SpielerName(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
return name;
}
habs nicht getest und im forum geschrieben also kann ich für nichts garantieren
also ganz oben definierst du:
//die Fraktionen
#define fraktname1 "Feuerwehr"
#define fraktname2 "Polizei"
#define fraktname3 "Rettung"
//Feuerwehr Ränge
#define frang1 "Feuerwehrmannanwärter"
#define frang2 "Feuerwehrmann"
#define frang3 "Haubtfeuerwehrmann"
#define frang4 "Löschmeister"
#define frang5 "Brandmeister"
#define frang6 "Wehrleiter"
//Polizei Ränge
#define prang1 "Polizeianwärter"
#define prang2 "Mittlerer Dienst"
#define prang3 "Gehobener Dienst"
#define prang4 "Kriminal Polizei"
#define prang5 "Stellvertretene Leitung"
#define prang6 "Polizei Leitung"
dann kannst du die stats so schreiben:
ocmd:stats(playerid,params[])
{
##pragma unused params
new string[128];
new string2[128];
new string3[128];
new string4[128];
new fraktname[64];
switch(GetPVarInt(playerid,"Fraktion"))
{
case 0:{fraktname="Zivi";}
case 1:{fraktname=fraktname1;}
case 2:{fraktname=fraktname2;}
case 3:{fraktname=fraktname3;}
}
//1 reihe
format(string,sizeof(string),"[Name: %s] [Level: %i] [Adminlevel: %i] [Fraktion: %s]",SpielerName(playerid),GetPlayerScore(playerid),GetPVarInt(playerid,"admin"),fraktname);
SendClientMessage(playerid,COLOR_GREY,string);
//2 reihe
format(string2,sizeof(string2),"[Deaths :%i][Kills: %i][Geld: %i][Bankguthaben: %i] ",GetPVarInt(playerid,"tote"),GetPVarInt(playerid,"kills"),GetPlayerMoney(playerid),GetPVarInt(playerid,"Bankgeld"));
SendClientMessage(playerid,COLOR_GREY,string2);
//3 reihe
format(string3,sizeof(string3),"[Armykills: %i] [LVPDkills: %i] [Terrorkills: %i]",GetPVarInt(playerid,"Armykills"),GetPVarInt(playerid,"LVPDkills"),GetPVarInt(playerid,"Terrorkills"));
SendClientMessage(playerid,COLOR_GREY,string3);
//4 reihe
format(string4,sizeof(string4),"[Hausnummer: %d] [Biznummer: %d]",GetPVarInt(playerid,"Hauskey"),GetPVarInt(playerid,"Bizkey"));
SendClientMessage(playerid,COLOR_GREY,string4);
return 1;
}
und den F Chat:
ocmd:f(playerid,params[])
{
new text[128];
if(sscanf(params,"s",text))return SendClientMessage(playerid,ROT,"/f [text]");
if(isPlayerInFrakt(playerid, 1))
{
new rang[64];
switch(GetPVarInt(playerid,"Rang"))
{
case 1:{rang=frang1;}
case 2:{rang=frang2;}
case 3:{rang=frang3;}
case 3:{rang=frang4;}
case 3:{rang=frang5;}
case 3:{rang=frang6;}
}
format(text,sizeof(text),"**%s %s: %s, over**",rang,SpielerName(playerid),text);
for(new i = 0; i<MAX_PLAYERS; i++)
{
if(isPlayerInFrakt(i,1))
{
SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
}
}
}
else if(isPlayerInFrakt(playerid,2))
{
new rang[64];
switch GetPVarInt(playerid,"Rang"))
{
case 1:{rang=prang1;}
case 2:{rang=prang2;}
case 3:{rang=prang3;}
case 3:{rang=prang4;}
case 3:{rang=prang5;}
case 3:{rang=prang6;}
}
format(text,sizeof(text),"**%s %s: %s, over**",rang,SpielerName(playerid),text);
for(new i = 0; i<MAX_PLAYERS; i++)
{
if(isPlayerInFrakt(i,1))
{
SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
}
}
}
return 1;
}
Hoffe das es funkt
MfG
was geht genau nicht? also was kommt wenn du ingame schreibst?
Versuch bei deinem "ocmd:f" 2 3 4 5 6
ocmd:f(playerid,params[]) { new text[128]; if(sscanf(params,"s",text))return SendClientMessage(playerid,ROT,"/f [text]"); format(text,sizeof(text),"%s %s: %s",GetPVarInt(playerid,"Rank"),SpielerName(playerid),text); for(new i=0; i
mal das so zu schreiben
ocmd:f(playerid,params[])
{
new text[128];
if(sscanf(params,"s",text))return SendClientMessage(playerid,ROT,"/f [text]");
format(text,sizeof(text),"%s %s: %s",rangname,SpielerName(playerid),text);// also da schreibst rangname und nicht GetPVarInt(playerid,"Rank") weil in deiner GetPVarInt(playerid,"Rank") stehen ja nur die Rankzahlen
for(new i=0; i
habs dir im stock eh auch geschrieben und müsste auch funktionieren
MfG
ich habs bei mir nicht mit case gemacht sondern mit if und es funkt eig gut
also versuchs mal so
stock GetPlayerRangName(playerid)
{
new rangname[64];
if(isPlayerInFrakt(playerid, 1))
{
if(GetPVarInt(playerid,"Rank")==1){rangname="Feuerwehrmannanwärter";}//Feuerwehr
else if(GetPVarInt(playerid,"Rank")==2){rangname="Feuerwehrmann";}
else if(GetPVarInt(playerid,"Rank")==3){rangname="Haubtfeuerwehrmann";}
else if(GetPVarInt(playerid,"Rank")==4){rangname="Löschmeister";}
else if(GetPVarInt(playerid,"Rank")==5){rangname="Brandmeister";}
else if(GetPVarInt(playerid,"Rank")==6){rangname="Wehrleiter";}
}
else if(isPlayerInFrakt(playerid, 2))
{
if(GetPVarInt(playerid,"Rank")==1){rangname="Polizeianwärter";}
else if(GetPVarInt(playerid,"Rank")==2){rangname="Mittlerer Dienst";}
else if(GetPVarInt(playerid,"Rank")==3){rangname="Gehobener Dienst";}
else if(GetPVarInt(playerid,"Rank")==4){rangname="Kriminal Polizei";}
else if(GetPVarInt(playerid,"Rank")==5){rangname="Stellvertretene Leitung";}
else if(GetPVarInt(playerid,"Rank")==6){rangname="Polizei Leitung";}
}
return rangname;
}
oder du machst es gleich alles im "ocmd" :
ocmd:f(playerid,params[])
{
new text[128];
if(sscanf(params,"s",text))return SendClientMessage(playerid,COLOR_YELLOW,"/r [text]");
if(isPlayerInFrakt(playerid, 1))
{
new string[128];
if(GetPVarInt(playerid,"Rank")==1){format(string, sizeof(string), "**Feuerwehrmannanwärter %s: %s, over. **", SpielerName(playerid), text);}
else if(GetPVarInt(playerid,"Rank")==2){format(string,sizeof(string),"**Feuerwehrmann %s: %s, over.**",SpielerName(playerid),text);}
else if(GetPVarInt(playerid,"Rank")==3){format(string,sizeof(string),"**Haubtfeuerwehrmann %s: %s, over.**",SpielerName(playerid),text);}
else if(GetPVarInt(playeried,"Rank")==4){format(string,sizeof(string),"**Löschmeister %s: %s, over**",SpielerName(playerid),text);}
else if(GetPVarInt(playerid,"Rank")==5){format(string,sizeof(string),"**Brandmeister %s: %s, over**",SpielerName(playerid)text);}
else if(GetPVarInt(playerid,"Rank")==6){format(string,sizeof(string),"**Wehrleiter %s: %s, over**",SpielerName(playerid)text);}
for(new i = 0; i<MAX_PLAYERS; i++)
{
if(GetPVarInt(i,"Fraktion")==1)
{
SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
}
}
}
if(isPlayerInFrakt(playerid, 2))
{
new string[128];
if(GetPVarInt(playerid,"Rank")==1){format(string, sizeof(string), "**Polizeianwärter %s: %s, over. **", SpielerName(playerid), text);}
else if(GetPVarInt(playerid,"Rank")==2){format(string,sizeof(string),"**Mittlerer Dienst %s: %s, over.**",SpielerName(playerid),text);}
else if(GetPVarInt(playerid,"Rank")==3){format(string,sizeof(string),"**Gehobener Dienst %s: %s, over.**",SpielerName(playerid),text);}
else if(GetPVarInt(playeried,"Rank")==4){format(string,sizeof(string),"**Kriminal Polizei %s: %s, over**",SpielerName(playerid),text);}
else if(GetPVarInt(playerid,"Rank")==5){format(string,sizeof(string),"**Stellvertretene Leitung %s: %s, over**",SpielerName(playerid)text);}
else if(GetPVarInt(playerid,"Rank")==6){format(string,sizeof(string),"**Polizei Leitung %s: %s, over**",SpielerName(playerid)text);}
{
if(GetPVarInt(i,"Fraktion")==2)
{
SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
}
}
}
return 1;
}
MfG
versuch so mal obs geht weiß ich nicht xD
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(GetVehicleModel(playerid) != 487 || GetVehicleModel(playerid) != 469 || GetVehicleModel(playerid) != 447 ||
GetVehicleModel(playerid) != 563 || GetVehicleModel(playerid) != 497 || GetVehicleModel(playerid) != 488 ||
GetVehicleModel(playerid) != 417 || GetVehicleModel(playerid) != 425 || GetVehicleModel(playerid) != 548)//Das sind alle Helis
if(GetPVarInt(playerid,"Flugschein") == 0)
{
RemovePlayerFromVehicle(playerid);
}
}
else if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(GetVehicleModel(playerid) != 461 || GetVehicleModel(playerid) != 522 || GetVehicleModel(playerid) != 448 || GetVehicleModel(playerid) != 462 || GetVehicleModel(playerid) != 463 || GetVehicleModel(playerid) != 468 || GetVehicleModel(playerid) != 471 || GetVehicleModel(playerid) != 521 || GetVehicleModel(playerid) != 523 || GetVehicleModel(playerid) != 581 || GetVehicleModel(playerid) != 586)
if(GetPVarInt(playerid,"Motorradschein") == 0)
{
RemovePlayerFromVehicle(playerid);
}
}
else if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(GetPVarInt(playerid,"Fuehrerschein") == 0)//hier wird überprüft ob der Spieler einen Führerschein hat die 0 zeigt das wenn er keinen Führerschein hat das der Code weiter geht und er vom Auto Rausgeschmissen wird.
{
SendClientMessage(playerid, COLOR_RED, " Du hast keinen Schein für dieses Fahrzeug/Flugzeug ");//Den Text könnt ihr ändern er wird dem Spieler gezeigt der in ein Auto einsteigt und keinen Führerschein hat.
RemovePlayerFromVehicle(playerid);//So wird dann der Spieler der keinen Führerschein hat aus dem Auto geschmissen!
}
}
oben machst du
new dachport;
bei GameModeInit:
dachport = CreatePickup(PickupID,1,X,Y,Z,0);//
dann bei OnPlayerPickUpPickup
if(pickupid ==lvpdhauptausgang)
{
SetPlayerPos(playerid,X,Y,Z);
SetPlayerFacingAngle(playerid,Koord die hinter Z steht);
SetCameraBehindPlayer(playerid);
SetPlayerInterior(playerid,0);
return 1;
}
Pickups findest du hier: hier klicken
hoffe das hilft dir weiter
MfG
ich hab ein stock erstellt und habe seit her keine Probleme mehr damit und finde es so auch leichter
machs also einfach so:
stock SpielerName(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
return name;
}
und dann bei zb giveweapon:
ocmd:giveweapon(playerid,params[])
{
if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,COLOR_RED,"Du bist kein Admin!");
new pID, waffe, munition, string[200], string2[200];
if(sscanf(params,"uii",pID,waffe,munition))return SendClientMessage(playerid,COLOR_YELLOW,"Verwendung: /giveweapon [Spieler][Waffe][Munition]");
format(string,sizeof(string),"**Du hast dem Spieler %s die Waffe mit der ID %d und %d Munition gegeben!**",SpielerName(pID),waffe,munition);
format(string2,sizeof(string2),"**Der Admin %s hat dir die Waffe mit der ID %d und %d Munition gegeben!**",SpielerName(playerid),waffe,munition);
GivePlayerWeapon(pID,waffe,munition);
SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
SendClientMessage(pID,COLOR_GREEN,string2);
return 1;
}
so müsste es funken und du brauchst nie mehr "new name" oder sonst was machen, weil du einfach SpielerName(deine ID/oder vom Ziel) eingeben musst und es kommt der Name
MfG
ich gebe dir einen guten Tipp machs dir selbst ;). Dafür wirst du nicht sehr viel Zeit brauchen und
später wirst du dankbar sein das du es selbst gemacht hast, weil sonst kennst dich vl nicht wirklich aus und schaffst keine neuen Sachen zu speichern
und wenn du es nicht kannst geb ich dir nen Tipp schau dir das Tut von Mr.Monat auf Youtube an wo er ein Register + Admin System erstellt und es auch gut erklärt ,
aber schau dir da beide an auch das wo er es nachher von "Enum" auf "PVar" umsteigt ;), weil dann brauchst du net mehr die Variablen auf 0 setzen
MfG
aja genau xD danke
Wie schön die Überschrift sagt habe ich ein Problem mit den Zinsen beim Payday... Ich will das eigentlich so haben das jeder 10% Zinsen bekommt aber iergendwie funkt es nicht
ich habs so gemacht:
if(GetPVarInt(playerid,"Fraktion")==0)
{
SendClientMessage(playerid,COLOR_GREY,"----------PAYDAY----------");
SendClientMessage(playerid,COLOR_GREY,"Du hast Arbeitslosengeld in der Höhe von 1000€ bekommen!");
new string[128], string2[128];
format(string,sizeof(string),"Dein alter Kontostand %d",GetPVarInt(playerid,"Bankgeld"));
SendClientMessage(playerid,COLOR_GREY,string);
SetPVarInt(playerid,"Bankgeld",GetPVarInt(playerid,"Bankgeld")+1000);
SetPVarInt(playerid,"Bankgeld",floatround(GetPVarInt(playerid,"Bankgeld")*0.10,floatround_round));
format(string2,sizeof(string2),"Dein neuer Kontostand lautet %d", GetPVarInt(playerid,"Bankgeld"));
SendClientMessage(playerid,COLOR_GREY,string2);
}
Hoffe ihr könnt mir helfen
MfG
ich hab gegen ein schriftliches auch nichts also wenn wer eines hat kann er es auch gerne posten^^
/edit: habs schon selber hin bekommen! td danke für euere Hilfe
du könntest dir einen eigenen Leiterwagen machen und da eine bewegliche Leiter machen oder mit Objecten aber sonst nicht
Hei... ich habe mal ein /buygun Sytem gemacht was aber überhaupt nicht funkt...
Ich habe es zuerst mit einem Dialog gemacht was auch sehr gut gefunkt hat, aber will es eigentlich lieber so haben:
/buygun 24 (für jetz zb deagle) 1000 (die Schuss).. es ist eigentlich nicht schwer zu machen, aber ich will nicht das man so alle Waffenids eingeben kann sondern nur bestimmte und max 1000 Schuss.
Deswegen habe ich es so gemacht:
ocmd:buygun(playerid,params[])
{
new waffe, munition;
if(sscanf(params,"ii",waffe,munition))return SendClientMessage(playerid,COLOR_YELLOW,"Verwendung: /buygun [Waffenid][Munition]");
switch(waffe)
{
case 23:
{
if(GetPlayerMoney(playerid) >= munition*2 + 500)
{
new string[128], string2[128];
GivePlayerWeapon(playerid,25,munition);
format(string,sizeof(string),"Du hast dir eine Silenced mit %d Schuss gekauft!",munition);
format(string2,sizeof(string2),"Du hast dafür %d € bezahlt!",munition*2+500);
GivePlayerMoney(playerid,-500);
GivePlayerMoney(playerid, -munition*2);
SendClientMessage(playerid,COLOR_GREEN,string);
SendClientMessage(playerid,COLOR_GREEN,string2);
}
else
{
new string[128];
format(string,sizeof(string),"Du benötigst %d € um dir eine Silenced Pistol mit %d Schuss zu kaufen!",munition*2+500,munition);
SendClientMessage(playerid,COLOR_RED,string);
}
}
case 24://{GivePlayerMoney(playerid,100);}
{
if(GetPlayerMoney(playerid) >= munition*2 + 200)
{
new string[128], string2[128];
GivePlayerWeapon(playerid,25,munition);
format(string,sizeof(string),"Du hast dir eine Deagle mit %d Schuss gekauft!",munition);
format(string2,sizeof(string2),"Du hast dafür %d € bezahlt!",munition*2+200);
GivePlayerMoney(playerid,-200);
GivePlayerMoney(playerid, -munition*2);
SendClientMessage(playerid,COLOR_GREEN,string);
}
else
{
new string[128];
format(string,sizeof(string),"Du benötigst %d € um dir eine Deagle mit %d Schuss zu kaufen!",munition*2+200,munition);
SendClientMessage(playerid,COLOR_RED,string);
}
}
case 25://{GivePlayerMoney(playerid,100);}
{
if(GetPlayerMoney(playerid) >= munition*2 + 1000)
{
new string[128];
GivePlayerWeapon(playerid,25,munition);
format(string,sizeof(string),"Du hast dir eine Shrot mit %d Schuss gekauft!",munition);
GivePlayerMoney(playerid,-1000);
GivePlayerMoney(playerid, -munition*2);
SendClientMessage(playerid,COLOR_GREEN,string);
}
else
{
new string[128];
format(string,sizeof(string),"Du benötigst %d € um dir eine Shrot mit %d Schuss zu kaufen!",munition*2+1000,munition);
SendClientMessage(playerid,COLOR_RED,string);
}
}
}
So funktioniert es aber überhaupt nicht und ich habe keinen Plan wie ich es sonst machen soll
Hoffe ihr könnt mir helfen
MfG