Hat geklappt und danke für die sehr schnelle Antwort!!!!
MfG
Hat geklappt und danke für die sehr schnelle Antwort!!!!
MfG
Hei... als erster sag ich gleich ich habe die SuFu benutzt und auch Google und auch passende Icons gefunden, aber nicht die was ich wirklich suche...
und zwar würde ich gerne einen Befehl erstellen:
ocmd:noobspawn(playerid,params[])
{
#pragma unused params
SetPlayerMapIcon(playerid,0,x,y,z,Marker,0)
return 1;
}
und da wo ich "Marker" stehen habe will ich dieses rote Dreieck haben das auf der Karte zu sehen ist damit man zum Noobspawn hin finden kann und er soll auch zum sehen sein wenn man sehr weit weg ist. Dann ist er halt ganz am Rand. Also eigentlich den gleichen Marker den man immer im SinglePlayer bei den Missionen hat wenn man wo hin fahren muss
Dieser Marker soll auch wenn man da ist nachher als roter Kreis als Pickup angezeigt werden denn man aufsammelt und dann ist er nicht mehr auf der Karte und auch nicht mehr so zu sehen
Hoffe ihr könnt mir helfen
MfG
ja aber deswegen hab ich ja eine elsefunktion gemacht also wenn er im Bereich ist kann er den Befehl ausführen und wenn er nicht im Bereich ist dann kommt die Nachricht...
Das habe ich so bei meinen /buygun, /buyskin gemacht und keine Probleme damit also müsst es hier ja auch so funken
versuch es mal so:
if(strcmp(cmd, "/Abheben", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(!IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
{
SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
return 1;
}
else
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /withdraw [Betrag]");
format(string, sizeof(string), " Du hast $%d mit deinem Acc.", PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_GRAD3, string);
return 1;
}
new cashdeposit = strval(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /withdraw [Betrag]");
format(string, sizeof(string), " Du hast $%d in deinem Acc.", PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_GRAD3, string);
return 1;
}
if (cashdeposit > PlayerInfo[playerid][pAccount] || cashdeposit < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, " Du hast nicht genug !");
return 1;
}
ConsumingMoney[playerid] = 1;
GivePlayerMoney(playerid,cashdeposit);
PlayerInfo[playerid][pAccount]=PlayerInfo[playerid][pAccount]-cashdeposit;
format(string, sizeof(string), " Du hast $%d von deinem Account genommen. Kasse: $%d ", cashdeposit,PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_YELLOW, string);
return 1;
}
}
return 1;
}
if(strcmp(cmd, "/Einzahlen", true) == 0 || strcmp(cmd, "/Einzahlen", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(!IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
{
SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
return 1;
}
else
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /bank [Betrag]");
format(string, sizeof(string), " Du hast $%d auf deinem Account.", PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_GRAD3, string);
return 1;
}
new cashdeposit = strval(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "NUTZUNG: /bank [Betrag]");
format(string, sizeof(string), " Du hast $%d auf deinem Account.", PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_GRAD3, string);
return 1;
}
if (cashdeposit > GetPlayerMoney(playerid) || cashdeposit < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, " Du hast nicht so viel");
return 1;
}
GivePlayerMoney(playerid,-cashdeposit);
new curfunds = PlayerInfo[playerid][pAccount];
PlayerInfo[playerid][pAccount]=cashdeposit+PlayerInfo[playerid][pAccount];
SendClientMessage(playerid, COLOR_WHITE, "|___ BANK Erklärung ___|");
format(string, sizeof(string), " Vorheriger Kontostand: $%d", curfunds);
SendClientMessage(playerid, COLOR_GRAD2, string);
format(string, sizeof(string), " Zahlung: $%d",cashdeposit);
SendClientMessage(playerid, COLOR_GRAD4, string);
SendClientMessage(playerid, COLOR_GRAD6, "|-----------------------------------------|");
format(string, sizeof(string), " Neuer Kontostand: $%d", PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_WHITE, string);
return 1;
}
}
return 1;
}
if(strcmp(cmd, "/Kontostand", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(!IsPlayerInRangeOfPoint(playerid, 7.0, 2309.1921, -8.5255, 26.7422))
{
SendClientMessage(playerid, COLOR_GREY, " Du bist nicht an der Bank !");
return 1;
}
else
{
format(string, sizeof(string), " Du hast $%d auf deinem Account.",PlayerInfo[playerid][pAccount]);
SendClientMessage(playerid, COLOR_YELLOW, string);
}
}
return 1;
}
ich habs nicht getestet also kann ich nichts versprechen
oh sry so wäre es aber am leichtesten
versuchs so mal:
if(PlayerInfo[playerid][pMember] > 0)
{
SendClientMessage(playerid,COLOR_RED,"Du kannst diesen Befehl nur nutzen wenn du in einer Fraktion bist!");
}
SendClientMessage(playerid,COLOR_ORANGE,"User die online sind!");
for(new i = 0; i<MAX_PLAYERS; i++)
{
else if(PlayerInfo[playerid][pMember] > 1)
{
if(GetPVarInt(i,"Armykills") <10){new string[128]; format(string,sizeof(string),"Specialist: %s",SpielerName(i)); SendClientMessage(playerid,COLOR_ORANGE,string);}
else if(GetPVarInt(i,"Armykills") <20){new string[128]; format(string,sizeof(string),"Oberst: %s",SpielerName(i)); SendClientMessage(playerid,COLOR_ORANGE,string);}
else if(GetPVarInt(i,"Armykills") >=20){new string[128]; format(string,sizeof(string),"General: %s",SpielerName(i)); SendClientMessage(playerid,COLOR_ORANGE,string);}
}
else if(PlayerInfo[playerid][pMember] > 0)
{
if(GetPVarInt(i,"Armykills") <10){new string[128]; format(string,sizeof(string),"Streifencop: %s",SpielerName(i)); SendClientMessage(playerid,COLOR_ORANGE,string);}
else if(GetPVarInt(i,"Armykills") <20){new string[128]; format(string,sizeof(string),"Kommissar: %s",SpielerName(i)); SendClientMessage(playerid,COLOR_ORANGE,string);}
else if(GetPVarInt(i,"Armykills") >=20){new string[128]; format(string,sizeof(string),"Direktor: %s",SpielerName(i)); SendClientMessage(playerid,COLOR_ORANGE,string);}
}
else if(PlayerInfo[playerid][pMember] > 3)
{
if(GetPVarInt(i,"Armykills") <10){new string[128]; format(string,sizeof(string),"Anhänger: %s",SpielerName(i)); SendClientMessage(playerid,COLOR_ORANGE,string);}
else if(GetPVarInt(i,"Armykills") <20){new string[128]; format(string,sizeof(string),"Attentäter: %s",SpielerName(i)); SendClientMessage(playerid,COLOR_ORANGE,string);}
else if(GetPVarInt(i,"Armykills") >=20){new string[128]; format(string,sizeof(string),"Boss: %s",SpielerName(i)); SendClientMessage(playerid,COLOR_ORANGE,string);}
}
}
return 1;
}[/pwn]
und für die Ränge was ich da hab wie zb bei der 3 Fraktion (Boss, anähnger) die kannst du natürlich ändern
das 2 Problem ist schon geklärt
hab einfach
return SendClientMessage(playerid..... gemacht und das funkt supa
und ja hab mir fast gedacht das ich da einen Timer setzen muss
mr.monat erklärt eh so einfach und wenn du da nicht das abschreiben zusammen bringst kannst aufhören mit dem scripten^^
Es geht um das, dass es ziemlich anzipft wenn immer wieder zur Hilfe oder als Kommentar hinzugefügt wird benutzt die SuFo oder google etc...
Es geht nicht um deine Hilfe die war eh oke hat mir aber nicht weitergeholfen, weil ich das nicht im Script habe und td werden die Spieler angezeigt, aber das ist jetz egal..
Es geht um das, dass eigentlich keiner wissen will das er die SuFo google etc benutzen soll oder wie er es benutzen soll.... Das weiß eh jeder...
Alles anzeigenFalsch, Master_FM. Das hat mit ShowPlayerMarkers zu tun, was mit einer Suche durchs Wiki beantwortet wäre. Lösche
ShowPlayerMarkers(1);
aus deinem Script und versuch vor der nächsten Hilfeanfrage mal einen eigenen Lösungsweg zu entwickeln.
1. Google Suche "Spieler Markierungen SAMP"
2. Ergebnis: http://wiki.sa-mp.com/wiki/ShowPlayerMarkers
3. Scriptkenntnisse als Serverowner wären so 'ne Art Grundvoraussetzung
bei mir ist ShowPlayerMarkers(1); nicht im Script und trotzdem sieht man jeden Spieler auf der Karte!
und das Forum ist ja dazu da, dass Spieler ihr Fragen an andere stellen können und es nicht suchen müssen...... Weil eigentlich könnte man jede Frage im Forum mithilfe von google lösen, also wäre das Forum deiner Meinung ja nutzlos oder?
und du musst nicht helfen!!! Diese Ansage benutze die SuFu oder google kann man sich sparen das ist eigentlich spam und mehr net....
MfG
Bei OnPlayerCommandText unten
return SendClientMessage(playerid, farbe, "Dein Text");
Müsste glaube ich funktionieren, probier es mal.
ICH DANKE DIR
ich hab das prob auch schon gepostet und bei mir kam nur ich soll ne if Abfrage über alle Befehle machen und wenn das nicht dabei ist kommt dan der Befehl existiert nicht oder sowas
aba das ist ja ein bisschen leichter xD
du benutzt ja bestimmt auch ein login system oder?
da wäre es doch am einfachsten wenn du jedem SPieler der sich registriert einen Starbonus gibst
dann braucht er den Befehl net eingeben du brauchst keine Variablen machen und es kann jeder nur einmal bekommen, weil man sich nur einmal registrieren kann
das würde keine Arbeit machen
MfG
aso oke und wie mach ich das mit floatround?^^
egal was ich versucht hab es kam immer ne error meldung
1. Benutze einfach einen Timer der recht kurz ist und lass den Spieler dann einfach direkt spawnen.
2. Mache einfach eine if-Anfrage ob einer deiner Befehle eingegeben wurde, anonsten wird diese Meldung ausgegeben.
3. CreateVehicle(veh,X+5,Y+5,Z+2,0.0,color1,color2,10);
Ed.: Grammatikalisch Fehler beseitigt.
1. habe Timer gesetz, aber man muss trotzdem auf den Button klicken....
3. habe das auf 10 gesetzt, aber da hat sich leider nichts getan....
funkt leider nicht bekomm diese Error Meldung
E:\windows c server\gamemodes\testocmd.pwn(2549) : warning 213: tag mismatch
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Warning.
und das ; habe ich natürlich dazu geschrieben ;P
/Edit: wenn ich es so schreibe bekomm ich keine Errors:
if(GetPVarInt(playerid,"Hauskey")>=1)
{
SetPVarInt(playerid,"Bankgeld", GetPVarInt(playerid,"Bankgeld") * 1001);
}
ich habs so gemacht, aber bekam dannach einen Error -.-
if(GetPVarInt(playerid,"Hauskey")>=1)
{
SetPVarInt(playerid,"Bankgeld",*1001)
}
und zwa es sind 3 Probleme
Das erste ist: ich würde gerne die Skinauswahl wenn man auf dem Server conectet auschalten also das man nach dem Passwort gleich spawnt und nicht erst auf weiter klicken muss....
die 2 Frage: ich würde gerne wenn man einen Befehl falsch eingibt bzw der Befehl nicht vorhanden ist stehen haben: Dieser Befehl existiert nicht. und nicht das: SERVER: Unknown command.
die 3 und letze Frage: ich habe mir einen Befehl mit /veh gemacht. der geht so:
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;
}
und wenn ich mir jetz ein Fahrzeug spawne bleibt es bis zum server restart... Das will ich aber nicht. ich würde gerne machen wenn man 10 sek oder was nicht im Fahrzeug ist das es gelöscht wird. Ich weiß aber leider nicht wie ich das mache
Hoffe ihr könnt mir bei meinen kleinen Probs. helfen
MfG
Hei. Ich will ein System machen wenn man ein Haus oder ein Biz besitzt bekommt man 0,2% Zinsen bzw wenn man nur eines der beiden besitzt bekommt man 0,1%.
Ich will es dann aber nicht selber bekommen sondern auf die Bank. Ich hab so angefangen weiß aber nicht wie ich es genau auf die Bank bekomm
if(GetPVarInt(playerid,"Hauskey")>=1)
{
SetPVarInt(playerid,"Bankgeld", //HIER WILL ICH DANN DIE 0,1 % BEKOMMEN)
}
Hoffe ihr könnt mir helfen
glaub mir pawno is the best!!!
da gibt es am meisten tutorials in englisch und deutsch und am meisten leute können dir da auch helfen
weil fast alle pawno verwenden!!!!!
also benutze pawno
Hei ich habe bei meinem /r chat einen return Fehler aber ich finde ihn nicht
ocmd:r(playerid,params[])
{
new text;
if(sscanf(params,"s",text))return SendClientMessage(playerid,COLOR_YELLOW,"/r [text]");
if(GetPVarInt(playerid,"Fraktion")==1)
{
new string[128];
if(GetPVarInt(playerid,"Armykills")< 10) { format(string, sizeof(string), "** ARMY Specialist %s: %s, over. **", SpielerName(playerid), text);}
else if(GetPVarInt(playerid,"Armykills")<20) {format(string,sizeof(string),"**ARMY Coporal %s: %s, over.**",SpielerName(playerid),text);}
else if(GetPVarInt(playerid,"Armykills")>=20) {format(string,sizeof(string),"**ARMY General %s: %s, over.**",SpielerName(playerid),text);}
for(new i = 0; i<MAX_PLAYERS; i++)
{
if(GetPVarInt(i,"Fraktion")==1)
{
SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
}
}
}
return 1;
}
Es kommt immer nach der Nachricht Server unknown Command
aber keine Ahnung wieso
mfg