Guten Morgen
Ich komme leider mal wieder bei einem Fehler nicht weiter und hoffe um Rat
Was passieren soll: "/abgeben" -> Dialog(Input) -> Code 5791 als Bestätigung -> Man bekommt eine von 16 Pins in den ACC gespeichert
Was tatsächlich passiert: "/abgeben" -> Dialog(Input) -> nichts
Ich hoffe, ihr könnt mir mal wieder unter die Arme greifen vielen Dank im Vorraus!
ocmd:abgeben(playerid,params[])
{
if(IsPlayerInRangeOfPoint(playerid,5,596.9559,-3962.3389,40.3781))
{
if(GetPlayerScore(playerid)>=1)
{
ShowPlayerDialog(playerid,abgebendialog,DIALOG_STYLE_INPUT,"CODE","Gib den Code ein!","SET","");
}
if(GetPlayerScore(playerid)==0)
{
SendClientMessage(playerid,0xFF000FFF,"Netter Versuch! Besuche das Tutorial!");
}
}
}
if(dialogid==abgebendialog)
{
if(response==1) //OK
{
if(inputtext[abgebendialog]== 5791)
{
new Pin = random(15);
switch(Pin)
{
case 0: Pin = 1;//4564;
case 1: Pin = 2;//4563;
case 2: Pin = 3;//7456;
case 3: Pin = 4;//4567;
case 4: Pin = 5;//1047;
case 5: Pin = 6;//4507;
case 6: Pin = 7;//4467;
case 7: Pin = 8;//3217;
case 8: Pin = 9;//1454;
case 9: Pin = 10;//4204;
case 10: Pin = 11;//3448;
case 11: Pin = 12;//4045;
case 12: Pin = 13;//4254;
case 13: Pin = 14;//6542;
case 14: Pin = 15;//6542;
case 15: Pin = 16;//6547;
}
SetPVarInt(playerid,"Pin",Pin);
SpielerSpeichern(playerid);
new string[128];
new pin[64];
switch(GetPVarInt(playerid,"Pin"))
{
case 1:{pin="4564";}
case 2:{pin="4563";}
case 3:{pin="7456";}
case 4:{pin="4567";}
case 5:{pin="1047";}
case 6:{pin="4507";}
case 7:{pin="4467";}
case 8:{pin="3217";}
case 9:{pin="1454";}
case 10:{pin="4204";}
case 11:{pin="3448";}
case 12:{pin="4045";}
case 13:{pin="4254";}
case 14:{pin="6542";}
case 15:{pin="6542";}
case 16:{pin="6547";}
}
format(string,sizeof(string),"[Pin: %s]",GetPVarInt(playerid,"Pin"));
SendClientMessage(playerid,0xFF000FFF,string);
SendClientMessage(playerid,0xFF000FFF,"Falls du diesen vergisst, kannst du ihn bei '/stats' aufrufen");
SetPlayerScore(playerid,GetPlayerScore(playerid)+1);
}
}
if(!response)
{
return 1;
}
if(response==0) //also nein
{
return 1;
}
}
Mit der Pin, die man theoretisch bekommen sollte, soll folgendes passieren:
if(pickupid==gateinselkegel)
{
if(GetPlayerScore(playerid) == 0)
{
SendClientMessage(playerid, 0xFF0000FF, "Gehe für die Einweisung erst zum Priester!");
}
if(GetPlayerScore(playerid) != 0)
{
ShowPlayerDialog(playerid,opengatedialog,DIALOG_STYLE_INPUT,"PIN","Gib die Pin ein!","SET","");
}
}
if(dialogid==opengatedialog)
{
if(response==1) //also OK
{
if(inputtext[opengatedialog]== 4564)
{
if(GetPVarInt(playerid,"Pin")==1)
{
SetTimer("Freiheit",1000,false);
SendClientMessage(playerid,0xFF000FFF,"Begib dich schnell zum Tor!");
}
}
if(inputtext[opengatedialog]== 4563)
{
if(GetPVarInt(playerid,"Pin")==2)
{
SetTimer("Freiheit",1000,false);
SendClientMessage(playerid,0xFF000FFF,"Begib dich schnell zum Tor!");
}
}
if(inputtext[opengatedialog]== 7456)
{
if(GetPVarInt(playerid,"Pin")==3)
{
SetTimer("Freiheit",1000,false);
SendClientMessage(playerid,0xFF000FFF,"Begib dich schnell zum Tor!");
}
}
if(inputtext[opengatedialog]== 4567)
{
if(GetPVarInt(playerid,"Pin")==4)
{
SetTimer("Freiheit",1000,false);
SendClientMessage(playerid,0xFF000FFF,"Begib dich schnell zum Tor!");
}
}
if(!response)
{
return 1;
}
if(response==0) //also nein
{
return 1;
}
}
forward Freiheit(playerid);
public Freiheit(playerid)
{
MoveObject(inseltor1,744.5,-4021.2,40.4,3);
if(GetPlayerScore(playerid)<=1)
{
if(IsPlayerInArea(playerid,740,-4020,763,-4036))
{
SpawnPlayer(playerid);
SetTimer("Freiheit2",5000,false);
}
}
}
forward Freiheit2(playerid);
public Freiheit2(playerid)
{
if(GetPlayerScore(playerid)<=1)
{
if(IsPlayerInArea(playerid,740,-4020,763,-4036))
{
SpawnPlayer(playerid);
SetTimer("Freiheitback",3000,false);
}
}
}
forward Freiheitback(playerid);
public Freiheitback(playerid)
{
MoveObject(inseltor1,744.5,-4026.4,40.4,3);
if(GetPlayerScore(playerid)<=1)
{
if(IsPlayerInArea(playerid,740,-4020,763,-4036))
{
SpawnPlayer(playerid);
}
}
}
//Edit: Hab mir die Pin mal manuell eingefügt....Der 2. Dialog funzt auch nicht so, wie gewollt
(Tor bewegt sich nicht ansatzweise)