Stimmt ist mir garnicht aufgefallen :3
Danke
Aber wieso wird nur die Hälfte , bzw nur 'string' angezeigt im Dialog?
Ich musste es teilen weil sonst n Error kommt dass die Zeile zu lang ist :O
Habs
Stimmt ist mir garnicht aufgefallen :3
Danke
Aber wieso wird nur die Hälfte , bzw nur 'string' angezeigt im Dialog?
Ich musste es teilen weil sonst n Error kommt dass die Zeile zu lang ist :O
Habs
if(GetPlayerScore(playerid) >= Buycars[i][CarScore])
Du fragst bei deiner Abfrage ab , ob der Score kleiner als CarScore ist.
Haben nicht alle die gleiche ?
Hey.
Hab nen Stats Befehl gemacht , nur funktioniert der nicht so wie ich gerne möchte
Zum einen wird nur ein Teil angezeigt , und die 'Lebensanzeige' ist buggy
ocmd:stats(playerid,params[])
{
new string[600];
new string2[600];
new string3[1600];
new fraktname[64];
new fraktrangname[64];
new arang[32];
new Spieler[64];
new herkunft[32];
new geschlecht[32];
new levelpunkteprolevel=GetPlayerScore(playerid)*2;
levelpunkteprolevel+=6;
format(Spieler,sizeof(Spieler),"Spieler/%s.txt",PlayerName(playerid));
switch(dini_Int(Spieler,"Geschlecht"))
{
case 0:{geschlecht="Maennlich";}
case 1:{geschlecht="Weiblich";}
}
switch(dini_Int(Spieler,"Land"))
{
case 0:{herkunft="Deutschland";}
case 1:{herkunft="Oesterreich";}
case 2:{herkunft="Schweiz";}
}
switch(dini_Int(Spieler,"Fraktion"))
{
case 0:{fraktname="Zivilist";}
case 1:
{
fraktname="LSPD";
switch(dini_Int(Spieler,"Fraktionsrang"))
{
case 1:{fraktrangname="Streife";}
case 2:{fraktrangname="Polizist";}
case 3:{fraktrangname="Offizier";}
case 4:{fraktrangname="Co-Leader";}
case 5:{fraktrangname="Leader";}
}
}
case 2:
{
fraktname="Grove Street";
switch(dini_Int(Spieler,"Fraktionsrang"))
{
case 1: {fraktrangname="Sidekick";}
case 2: {fraktrangname="Homie";}
case 3: {fraktrangname="Bro";}
case 4: {fraktrangname="Co-Leader";}
case 5: {fraktrangname="Leader";}
}
}
case 3:
{
fraktname="Hitman";
switch(dini_Int(Spieler,"Fraktionsrang"))
{
case 1: {fraktrangname="Gelegenheitskiller";}
case 2: {fraktrangname="Auftragskiller";}
case 3: {fraktrangname="Hitman";}
case 4: {fraktrangname="Co-Leader";}
case 5: {fraktrangname="Leader";}
}
}
}
switch(dini_Int(Spieler,"Adminlevel"))
{
case 0:{arang="Kein Admin";}
case 1:{arang="Supporter";}
case 2:{arang="Moderator";}
case 3:{arang="Admin";}
case 4:{arang="Co-Owner";}
case 5:{arang="Owner";}
}
switch(dini_Int(Spieler,"Geschlecht"))
{
case 1:{geschlecht="Maennlich";}
case 2:{geschlecht="Weiblich";}
}
new Float:leben;
GetPlayerHealth(playerid,leben);
format(string,sizeof(string),"{BE1816}[Ingame]{FFFFFF}\n\t[Name: %s]\n\t[Level: %i]\n\t[Levelpunkte: %i/%i]\n\t[Geld: %i]\n\t[Leben: %i]\n\n\n{BE1816}[Reallife]{FFFFFF}\n\t[Geschlecht: %s]\n\t[Alter: %i]\n\t[Herkunft: %s]\n\n",PlayerName(playerid),GetPlayerScore(playerid),levelpunkte[playerid],levelpunkteprolevel,GetPlayerMoney(playerid),leben/10,geschlecht,dini_Int(Spieler,"Alter"),herkunft);
format(string2,sizeof(string2),"{BE1816}[Fraktion]{FFFFFF}\n\t[Fraktion: %s]\n\t[Fraktionsrang: %s]\n\n{BE1816}[Admin]{FFFFFF}\n\t[Adminrang: %s]",fraktname,fraktrangname,arang);
format(string3,sizeof(string3),"%s %s",string,string2);
ShowPlayerDialog(playerid,Dialog_Stats,DIALOG_STYLE_MSGBOX,"Statistik",string,"Okay","");
return 1;
}
Hey.
Musste grade feststellen dass mein ATM System buggt.
zB. habe ich 50k , wenn ich 20k einzahle habe ich auf einmal 200k+ auf der Hand?
Die Dialogids überschneiden sich nicht!
if(dialogid==Dialog_atmeinzahlen)
{
if(response)
{
if(isNumeric(inputtext))
{
new Spieler[64];
format(Spieler,sizeof(Spieler),"Spieler/%s.txt",PlayerName(playerid));
new geld=GetPlayerMoney(playerid);
if(geld>=strval(inputtext))
{
SpielerSpeichern(playerid);
SpielerLaden(playerid);
dini_IntSet(Spieler,"Kontostand",dini_Int(Spieler,"Kontostand")+strval(inputtext));
new string[256];
format(string,sizeof(string),"Eingezahlt: %i | Neuer Kontostand: %i",strval(inputtext),dini_Int(Spieler,"Kontostand"));
SendClientMessage(playerid,Gruen,string);
GivePlayerMoney(playerid,-strval(inputtext));
}
else
{
SendClientMessage(playerid,Rot,"Du hast nicht soviel Geld!");
}
}
else
{
SendClientMessage(playerid,Rot,"Du kannst nur $ einzahlen !");
}
}
else
{
ShowPlayerDialog(playerid,Dialog_atm,DIALOG_STYLE_LIST,"ATM","Kontostand\nEinzahlen\nAuszahlen","Weiter","Abbrechen");
}
}
Edit: Das mit den Checkpoints habe ich jetzt
Das Problem mit den Dialogen ist immernoch
Lass es mal printen, und was soll unwanted sein?
Steht da doch , wenn das Fahrzeug besetzt ist ist es 'unwanted' also wird es nicht respawnt
Hey.
Ich versuche die ganze zeit zu scripten , dass man als Beifahrer in ein Auto mit nur einem Sitz reinkann , also in ein Interior geportet wird.
Nehmen wir den Shamal. Man kann nur mit F einsteigen. Es ist egal ob ich F oder G drücke , ich werde immer reingeportet.
Und wenn ich den Shamal verlasse , werde ich an die Koordinaten 0.0,0.0,0.0 geportet, anstatt bei dem Shamal.
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(GetVehicleModel(vehicleid)==519)
{
if(ispassenger)
{
SendClientMessage(playerid,Grau,"Du kannst das Fahrzeug mit der Leertaste verlassen!");
inshamal[playerid]=GetPlayerVehicleID(playerid);
SetPlayerPos(playerid,1.808619,32.384357,1199.593750);
SetCameraBehindPlayer(playerid);
SetPlayerInterior(playerid,1);
}
}
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys==KEY_SPRINT)
{
if(inshamal[playerid]!=-1)
{
new Float:x,Float:y,Float:z;
GetVehiclePos(inshamal[playerid],x,y,z);
inshamal[playerid]=-1;
SetPlayerPos(playerid,x,y,z);
SetCameraBehindPlayer(playerid);
SetPlayerInterior(playerid,0);
}
}
}
Ja geht , es gibt auch einen als Filterscript soweit ich weiß
Hey
Also 1.
Ich hab versucht ein Führerschein system zu machen mit Race Checkpoints.
Klappt auch alles , nur passiert bei letzten Checkpoint nichts!
new Float:fscheckpoints[6][3] ={
{657.8871,-1226.5524,16.0821},
{687.5119,-1165.8440,14.9317},
{792.3574,-1051.9912,24.3873},
{794.8701,-1312.6343,13.0873},
{666.5079,-1316.3820,13.1576},
{670.3506,-1292.0353,13.2476}
};
public OnPlayerEnterRaceCheckpoint(playerid)
{
if (IsPlayerInAnyVehicle(playerid))
{
if(fsauto[playerid])
{
fsCheckpointStatus[playerid]++;
new letzerpunkt = 6;
if(fsCheckpointStatus[playerid] < letzerpunkt)
{
DisablePlayerRaceCheckpoint(playerid);
SetPlayerRaceCheckpoint(playerid,0,fscheckpoints[fsCheckpointStatus[playerid]][0],fscheckpoints[fsCheckpointStatus[playerid]][1],fscheckpoints[fsCheckpointStatus[playerid]][2],fscheckpoints[fsCheckpointStatus[playerid]+1][0],fscheckpoints[fsCheckpointStatus[playerid]+1][1],fscheckpoints[fsCheckpointStatus[playerid]+1][2],5.0);
}
if(fsCheckpointStatus[playerid] == letzerpunkt)
{
fsauto[playerid]=false;
fsCheckpointStatus[playerid] = 0;
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
DisablePlayerRaceCheckpoint(playerid);
}
}
}
return 1;
}
2. habe ich ein Problem mit farbigen Dialogen.
Ich habe {HTML-Farboce} gemacht , jedoch kommt im Dialog anstatt der Farbe {HTML-Farbcode} vor dem Wort
new string[400];
format(string,sizeof(string),"{D10000}Beschreibung: {FFFFFF}%s\n\nWenn das Ticket okay ist , drücke auf '{D10000}Absenden'{FFFFFF} , sonst auf '{D10000}Abbrechen'{FFFFFF}!",inputtext);
ShowPlayerDialog(playerid,Dialog_TicketBestaetigen,DIALOG_STYLE_MSGBOX,"Ticket bestätigen",string,"Absenden","Abbrechen");
das jetzt nur dir bei fahrer ins interior geportet werden klappt aber wie mach ich das ich jetzt wieder zum auto zurück geportet werde
Würde sagen in ner Variable die Fahrzeug ID oder so reinspeichern , also GetPlayerVehicleID , wenn er einsteigt , dann beim aussteigen die Koordinaten des Autos (aus der Variable) per GetVehiclePos abfragen und den Spieler dahin setzen
Alles anzeigenBin mir nicht sicher, aber klappt das nicht?
if(GetPlayerVehicleSeat(playerid)==0/1/2/3)?
Also 0 Fahrer,1Beifahrer,2&3 rücksitz
Klappt das? Habs selber noch nie getestet.
1. Bitte [ pwn][ /pwn]benutzen
2. Würde dass so gehen:
if(GetPlayerVehicleSeat(playerid)==0||GetPlayerVehicleSeat(playerid)==1||GetPlayerVehicleSeat(playerid)==2||GetPlayerVehicleSeat(playerid)==3)
Mit einer Variable , CreateObject und Remove/DeleteObject (Nicht sicher ^^) ?
Wenn du willst , kannst du meine Ps3 kaufen
Playstation 3 Slim 320 GB so gut wie neu , mit 3 SPielen ;D
@xSpeciiaL
Du musst andere Farbcodes nehmen, beispielsweise aus einem Colorpicker: http://www.colorpicker.com/
und dann machst du den Farbcode zwischen eine Klammer, Bsp: {E01B6A} ;D
Habe ich ja
Gib mal meine Farbcodes in den Link von dir ein ;/
Das public OnPlayerClickMap finde ich gar nicht in meinem Script,
soll ich das selbst schreiben und mit einem Forward noch definieren?
MfG.
Einfach rein , ohne forward
Alles klar..
Soll ich abfragen ob man ein Admin ist, dann das SetPlayerPosFindZ anwenden und dann einfach dort hin porten?
MfG.
Bei mir gehts so
public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
{
if(IsPlayerAnAdmin(playerid,1))
{
if(adutyb[playerid])
{
SetPlayerPosFindZ(playerid, fX, fY, fZ+10.0);
}
}
return 1;
}
Allerdings spawne ich dann unterm Boden , was aber kein Problem ist , weil du wieder nach oben buggst
Ahoi
Meine Events bzw Timer buggen 'leicht' rum.
Was der Fehler ist , kann man im Video glaube ich gut genug sehen
Also es wird 'Das Event wurde gestartet' so oft geschrieben wie Spieler teilnehmen und die Variable sinkt nicht.
Video: [video]