Hi :D.
Ich würde gerne wissen ob bzw. wie es möglich ist das der Name eines Bot's genau so angezeigt wird wie die Namen von Spielern.
Mfg Kisuke
Hi :D.
Ich würde gerne wissen ob bzw. wie es möglich ist das der Name eines Bot's genau so angezeigt wird wie die Namen von Spielern.
Mfg Kisuke
Hallo :D.
Ich habe folgendes Problem:
Ich habe einen Spawn mit SetSpawnInfo(...) festgelegt. Wenn ich aber ein paar mal sterbe, fange ich auf einmal an wieder dort zu spawnen wo die einzig vorhandene AddPlayerClass festgelegt ist.
Wie kann ich das verhindern???
Hallo liebe Community,
mein "Spawnsystem" (nennt man das so?^^) funktioniert nicht richtig.
Nachdem man sich eingeloggt hat, wird über einen stock die FraktionsID abgefragt und dementsprechend wird ein SetSpawnInfo zugeteilt.
Alles funktioniert soweit so wie es soll, außer nachdem man das 1. mal gestorben ist. Danach spawnt man immer am Noobspawn (welcher mit AddPlayerClass und SetSpawnInfo festgelegt ist).
Via /spawn -Befehl startet man auch immer am richtigen Spawn, solange man halt noch kein mal gestorben ist...
Ich bräuchte echt Hilfe woran das liegen könnte :S.
PS: Bei OnPlayerDeath ist nichts eingetragen, kann also nicht damit zusammenhängen.
Hi,
ich habe gerade an einem Überweisungsmechanismus für mein Banksystem rumgebastelt, allerdings klappt es nicht wie ich will.
Hier harkt es:
if(dialogid==DIALOG_BANKUEBERWEISEN2)
{
if(response==0)
{
ShowPlayerDialog(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Bank","Einzahlen\nAuszahlen\nKontostand\nÜberweisen","Auswählen","Abbrechen");
}
if(response==1)
{
new Ziel;
if(!sscanf(inputtext,"u",Ziel))
{
if(IsPlayerConnected(Ziel))
{
SpielerInfo[Ziel][Bankkonto]=SpielerInfo[Ziel][Bankkonto]+Ueberweisung[playerid];
SendClientMessage(playerid,GRUEN,"Überweisung erfolgreich!");
ShowPlayerDialog(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Bank","Einzahlen\nAuszahlen\nKontostand\nÜberweisen","Auswählen","Abbrechen");
}
else return SendClientMessage(playerid,ROT,"Der Spieler ist nicht online!");
}
else SendClientMessage(playerid,ROT,"Ungültige Angabe!");
}
}
Alles anzeigen
Wir hier veranschaulich soll der Name des Spieler dem das Geld gutgeschrieben wird angegeben werden. Wird dies allerdings gemacht kommt jedes mal die Meldung ungültige Angabe, obwohl die sscanf-Bedingung "u" (Spieler) ja gegeben und auch erfüllt wird.
Wo ist der Fehler?
Mfg Kisuke alias Near
Das war nicht meine Frage aber danke für den Hinweis
Wo ichs gerade so probieren wollte merke ich das mir das fast überhaupt nichts geholfen hat :D.
Kann mir das jemand etwas besser erkären?
Und nochmal zum verständnis, wird ein Spieler ins LSPD eingeladen soll er in eine Skinauswahl kommen in er NUR zwischen verschiedenen LSPD-Skins wechseln kann.
Bis jetzt bin ich hier:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(Skinauswahl[playerid]==1) // Definition das der Spieler in der Auswahl landet
{
if(newkeys==KEY_LEFT)
{
if(AusgewaehlterSkin[playerid]<0) // << Ist die Variabel, die ich erstellen sollte
{
AusgewaehlterSkin[playerid]=2;
}
else
{
AusgewaehlterSkin[playerid]--;
}
}
else if(newkeys==KEY_RIGHT)
{
if(AusgewaehlterSkin[playerid]>sizeof(AusgewaehlterSkin))AusgewaehlterSkin[playerid]=0;
else
{
AusgewaehlterSkin[playerid]++;
}
}
}
return 1;
}
Wie mache ich nun weiter?
Ok danke für die Ideenansätze, ich probier mal ein bisschen rum :).
Und nein ich habe kein Godfather ;).
PS:
Zitatif(Variable == 1)
SetPlayerSkin(Skin1...)
Variable++;
else if(Variable == 2)
Geht das ganze nicht auch ohne zichtrilliarden if-Bedingungen?
//Edit
Danke RFT, ich probiers gleich mal
if team_ballas (setplayerskin, skinid) ????
Ich rede von einer Skinauswahl, also mehrere Skins zur Auswahl haben.
ZitatWenn du deine Auswahl ändern willst, mache dir deine eigene. Oder ein Klamottenladen/Garderobe, Wo man nachträglich sein Skin je nach Fraktion/Team ändern kann.
Meine Frage ist ja, wie genau ich das mache :D.
Also nochmal :D.
Der springende Punkt ist, das in der Skinauswahl nur die Skins sein sollen die ich der Gang zuordne, in die der Spieler eingeladen worden ist ;). (Gang: Ballas = SKIN1, SKIN2 usw...; Gang: Grove = SKIN3, SKIN4 usw...)
Wie mache ich das?
Ich glaub du hast mich nicht ganz verstanden :D.
Was ich möchte ist, das wenn der Spieler die Einladung in eine Gang akzeptiert, in der Skinauswahl landet und sich einen Skin raussuchen kann der ihm gefällt.
Hallo :).
Ich habe eine Frage, und zwar möchte ich gerne das wenn ein Spieler z.B. in eine Gang eingeladen wird in der Skinauswahl landet, dann aber nurnoch die zur Gang zugehörigen Skins auswählen kann. Könnte mir jemand sagen wie man das macht?
Hallo :D.
Tut mir Leid wegen der komplizierten Überschrift, aber ich bin neu in der Branche und weiß mich noch nicht so recht auszudrücken .
Ich habe folgende Frage/folgendes Problem:
In den Spielerdateien habe ich die Fraktion eines Spieler als Integer also als Zahl festgelegt. Beim /invite möchte ich aber nun das dem Spieler z.B. angezeigt wird "Du wurdest von SpielerX in die Fraktion [Fraktionsname/NICHT FraktionsID] eingeladen."
Und das möglichst ohne 20 if-Bedingungen zu machen :D.
Danke im vorraus.
Ich hab ein wenig mit den Lösungen varriiert und es klappt soweit :D.
Allerdings wird mir die Meldung "Aktuelles Wanted Level: X" nicht angezeigt....
Warum nicht?
//Edit: Außerdem kommt wenn mein "Grund" länger als 3 Buchstaben ist wieder die Meldung Server Unkown Command
Klappt nicht, selbes Problem.
Außerdem werden die Namen die formartiert werden nicht angezeigt
Hallo allerseits.
Ich habe mir einen /su Befehl gemacht damit Cops Spielern Wanteds geben können. Das sieht so aus:
CMD:su(playerid,params[])
{
new Ziel,Grund;
if(IsPlayerConnected(Ziel))
{
if(!sscanf(params,"us[10]",Ziel,Grund))
{
if(IstEinCop(playerid))
{
if(IstImDienst[playerid]==1)
{
if(!IstEinCop(Ziel))
{
new Wantedsterne=GetPlayerWantedLevel(playerid);
new string[128];
new PlayeridName[MAX_PLAYER_NAME],ZielName[MAX_PLAYER_NAME];
SetPlayerWantedLevel(Ziel,Wantedsterne+1);
GetPlayerName(playerid,PlayeridName,sizeof(PlayeridName));
GetPlayerName(Ziel,ZielName,sizeof(ZielName));
format(string,sizeof(string),"%s hat dir einen Wantedstern gegeben. Grund: %s",PlayeridName,Grund);
SendClientMessage(Ziel,HELLBLAU,string);
format(string,sizeof(string),"Du hast %s einen Wantedstern gegeben. Grund: %s",ZielName,Grund);
SendClientMessage(playerid,HELLBLAU, string);
format(string,sizeof(string),"Aktuelles Wantedlevel: %d",SpielerInfo[Ziel][Wantedlevel]);
SendClientMessage(Ziel,GELB,string);
}
else return SendClientMessage(playerid,ROT,"Dieser Spiel ist ein Beamter!");
}
else return SendClientMessage(playerid,ROT,"Du bist nicht im Dienst!");
}
else return SendClientMessage(playerid,ROT,"Du bist kein Beamter im Dienst!");
}
else return SendClientMessage(playerid,GRAU,"Benutze: /su(spect) [Spielername/ID] [Grund]");
}
else return SendClientMessage(playerid,ROT,"Der Spieler ist nicht online!");
return 1;
}
Alles anzeigen
Wenn ich den Befehl eingebe, passiert folgendes:
Was hab ich falsch gemacht?
Hallo :D.
Ich hab gestern ein kleines Bankrobsystem in mein Script eingearbeitet. Wenn man in der Bank ist tippt man /bankrob, ein 5 Minuten Timer läuft dann und nach den 5 Minuten kommt eine Meldung + das Geld an den Spieler (zumindest in der Theorie...)
Das ganze sieht so aus:
forward LSBankRobTimer(playerid);
public LSBankRobTimer(playerid)
{
new string[250];
LSBankRobErfolgreich = 2;
new BankrobBeuteLS = random(900000);
GivePlayerMoney(playerid,BankrobBeuteLS);
format(string, sizeof(string), "~g~Raubzug erfolgreich! Beute: %d$",BankrobBeuteLS);
GameTextForPlayer(playerid,string, 10000, 3);
format(string, sizeof(string), "Der Überfall auf die Bank von Los Santos war erfolgreich! Beute: %d$",BankrobBeuteLS);
OOCOff(COLOR_YELLOW, string);
}
Alles anzeigen
Soweit so gut, nachdem der Timer das ganze auslöst kommt zwar die Meldungen in Zeile 10, die andere Meldung hingegen sowie das Geld wird dem Spieler nicht gegeben :S.
Ich komm einfach nicht drauf warum nicht... Bestimmt ist es irgentwas ganz simples, also bitte nicht lachen ich mach das noch nicht lang.
Es gibt auch keine Warnings beim compilen.