Sorry, wenn ich jetzt etwas sarkastisch klinge, ich hab schon ein wenig getrunken, aber:
Meinst du nicht auch, dass du dir dringend die Grundlagen von PAWN durchlesen solltest?
NEIN ... Nur weil du der meinung bist das ich das so angeblich raffe ?
Jeder mensch lernt anders ...
Der eine durchs Lesen
der Andere Anhand von Vorgaben Beispielen etc
//edit
Ich weis das dieses Thema schon als erledigt ist aber deswegen ein neues eröffnen ist doch sinnlos
Folgendes Problem
Ich habs jetzt soweit hinbekommen das er zufällig eine anzahl an Geldscheinen dropt..
Die werte werden auch gespeichert
Nur beim aufsammeln sagt der mir einen anderen wert:
Hier mal die 2 Callbacks finde irgendwie den Fehler nicht:
// Ganz oben die Variablen
new barre1;
new barre2;
new barre3;
new barre4;
new barre5;
new Money[MAX_PLAYERS];
new Money1[MAX_PLAYERS];
new Money2[MAX_PLAYERS];
new Money3[MAX_PLAYERS];
new Money4[MAX_PLAYERS];
//OnPlayer Death
public OnPlayerDeath(playerid, killerid, reason)
{
new drop = random(5);
if(drop == 0)
{
new kh1 = random(30);
Money[playerid] = kh1;
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
barre1 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
GivePlayerMoney(playerid, -kh1);
new verloren[80];
format(verloren,sizeof(verloren),"%d $ Verloren", Money[playerid]);
GameTextForPlayer(playerid, verloren, 5000, 3);
}
else if(drop == 1)
{
new kd1 = random(35);
new kd2 = random(35);
Money[playerid] = kd1;
Money1[playerid] = kd2;
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
barre1 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
barre2 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
GivePlayerMoney(playerid, -kd1);
GivePlayerMoney(playerid, -kd2);
new kd = kd1 + kd2;
new verloren[80];
format(verloren,sizeof(verloren),"%d $ Verloren", kd);
GameTextForPlayer(playerid, verloren, 5000, 3);
}
else if(drop == 2)
{
new kg1 = random(40);
new kg2 = random(40);
new kg3 = random(40);
Money[playerid] = kg1;
Money1[playerid] = kg2;
Money2[playerid] = kg2;
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
barre1 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
barre2 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
barre3 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
GivePlayerMoney(playerid, -kg1);
GivePlayerMoney(playerid, -kg2);
GivePlayerMoney(playerid, -kg3);
new kg = kg1 + kg2 + kg3;
new verloren[80];
format(verloren,sizeof(verloren),"%d $ Verloren", kg);
GameTextForPlayer(playerid, verloren, 5000, 3);
}
else if(drop == 3)
{
new kf1 = random(45);
new kf2 = random(45);
new kf3 = random(45);
new kf4 = random(45);
Money[playerid] = kf1;
Money1[playerid] = kf2;
Money2[playerid] = kf3;
Money3[playerid] = kf4;
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
barre1 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
barre2 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
barre3 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
barre4 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
GivePlayerMoney(playerid, -kf1);
GivePlayerMoney(playerid, -kf2);
GivePlayerMoney(playerid, -kf3);
GivePlayerMoney(playerid, -kf4);
new kf = kf1 + kf2 + kf3 + kf4;
new verloren[80];
format(verloren,sizeof(verloren),"%d $ Verloren", kf);
GameTextForPlayer(playerid, verloren, 5000, 3);
}
else if(drop == 4)
{
new kc1 = random(50);
new kc2 = random(50);
new kc3 = random(50);
new kc4 = random(50);
new kc5 = random(50);
Money[playerid] = kc1;
Money1[playerid] = kc2;
Money2[playerid] = kc3;
Money3[playerid] = kc4;
Money4[playerid] = kc5;
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
barre1 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
barre2 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
barre3 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
barre4 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
barre5 = CreatePickup(1212, 23, x+2.0, y+2.0, z, 0);
GivePlayerMoney(playerid, -kc1);
GivePlayerMoney(playerid, -kc2);
GivePlayerMoney(playerid, -kc3);
GivePlayerMoney(playerid, -kc4);
GivePlayerMoney(playerid, -kc5);
new kc = kc1 + kc2 + kc3 + kc4 + kc5;
new verloren[80];
format(verloren,sizeof(verloren),"%d $ Verloren", kc);
GameTextForPlayer(playerid, verloren, 5000, 3);
}
return 1;
}
// OnPlayerPickupPickUp
public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == barre1)
{
new wtf[80];
format(wtf, sizeof(wtf), "Du hast %d $ Gefunden",Money[playerid]);
GameTextForPlayer(playerid, wtf, 5000, 3);
GivePlayerMoney(playerid,Money[playerid]);
DestroyPickup(barre1);
}
else if(pickupid == barre2)
{
new wtf2[80];
format(wtf2, sizeof(wtf2), "Du hast %d $ Gefunden",Money1[playerid]);
GameTextForPlayer(playerid, wtf2, 5000, 3);
GivePlayerMoney(playerid,Money1[playerid]);
DestroyPickup(barre2);
}
else if(pickupid == barre3)
{
new wtf3[80];
format(wtf3, sizeof(wtf3), "Du hast %d $ Gefunden",Money2[playerid]);
GameTextForPlayer(playerid, wtf3, 5000, 3);
GivePlayerMoney(playerid,Money2[playerid]);
DestroyPickup(barre3);
}
else if(pickupid == barre4)
{
new wtf4[80];
format(wtf4, sizeof(wtf4), "Du hast %d $ Gefunden",Money3[playerid]);
GameTextForPlayer(playerid, wtf4, 5000, 3);
GivePlayerMoney(playerid,Money3[playerid]);
DestroyPickup(barre4);
}
else if(pickupid == barre5)
{
new wtf5[80];
format(wtf5, sizeof(wtf5), "Du hast %d $ Gefunden",Money4[playerid]);
GameTextForPlayer(playerid, wtf5, 5000, 3);
GivePlayerMoney(playerid,Money4[playerid]);
DestroyPickup(barre5);
}
}
Frage: Wo Versteckt sich der Fehler ?
Oder wie Kann ich es besser schreiben ?
//edit
Eben ausprobiert ich sterbe .. Verlier nur einen Geldbündel .. der den wert 95 $ Beträgt obwohl laut code ein Bündel gedropt werden soll wenn
drop == 0 ist
speicher dann den wert also kh1 = zufällige zahl bis 30 in Money[playerid]
Wieso Speichert er 95 $ ?