Hallo leute ich wollte gerne es so haben das er für 30 Produkte 10$ zahlen muss doch ich habe keine ahnung wie ich das machen soll
ich habe es mal einfach ausprobiert mit diesem code doch er sagt mir immer das ich nicht genug geld habe obwohl ich 150.000$ besitze
Code:
new Preis = Wert * 10;
Wert * 50
- Quini2
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
new Preis = Wert * 0.10;
Versuch das mal -
Dafür bräuchtest du dann wiederum einen Float,
und keinen Integer... -
new Preis = 30 * 10;
Orange = Geld
Blau = Wert
würde das so gehen? -
Außer er nimmt floatround()
-
wieso brauche ich einen Float? ich habe ja keine Komma zahlen ?
er soll einfach nur wenn er 30 produkte kaufen tuht 10$ bezahlen sagen wir 90 produkte = 30$
so wollte ich das haben -
new Preis = 1 * produkte;
produkte ist dann halt die Anzahl, wieviele Produkte er kauft.
Den Preis kannst du dann verändernDa ich aber vermute, dass 1 Produkt 0.1$ oder so kosten soll, MUSST du demnach ein Float nehmen.
So entnehme ich das von Atrox und co.
-
Bei diesem Cmd hier:
dcmd_material(playerid,params[])
{
new Wert,string[128],Preis = 3 * Wert;
if(PlayerToPoint(1.5, playerid,802.8230,-613.7785,16.3359))
{
if(PlayerInfo[playerid][Nebenjob] == 4)
{
if(GetPlayerMoney(playerid) >= Preis)
{
if(EisenInfo[Volumen] >= 1)
{
if(sscanf(params,"i",Wert))
{
SendClientMessage(playerid,Rot,"Benutze /material [menge]");
return 1;
}
if(PlayerInfo[playerid][Eisen] >= 5000)
{
SendClientMessage(playerid,Rot,"Du kannst nur maximal 5000 Eisen tragen!");
return 1;
}
if(Wert < 1 || Wert > 5000)
{
SendClientMessage(playerid,Rot,"Die Eisen Menge muss zwischen 1 und 5000 liegen!");
return 1;
}
EisenInfo[Volumen] -= Wert;
GivePlayerMoney(playerid,-Preis);
PlayerInfo[playerid][Eisen] += Wert;
PlayerInfo[playerid][Geld] -= Preis;
format(string, sizeof(string), "Du hast dir %d Material gekauft für: %d$.",Wert,Preis);
SendClientMessage(playerid,Grün,string);
UpdaEisen();
return 1;
}
else
{
SendClientMessage(playerid,Rot,"Die Eisen Fabrik hat nicht mehr soviel Eisen!");
}
return 1;
}
else
{
format(string, sizeof(string), "Du hast nicht nicht genug Geld (%d$)!",Preis);
SendClientMessage(playerid,Rot,string);
}
return 1;
}
else
{
SendClientMessage(playerid,Rot,"Du bist kein Waffendealer!");
}
return 1;
}
else
{
SendClientMessage(playerid,Rot,"Du bist nicht an der Eisen Fabrik!");
}
return 1;
}verwende ich new Preis = 3*Wert;
doch igendwie funkioniert das nicht jemand eine idee?
Die Mats sollten mal 3 genommen werden sagen wir 100 mats * 3 = 300$ aber es funzt net jemand ne idee? -
Was passiert denn wenn man die funktion macht?
-
Also wenn ich den cmd eingebe kommt nur:
z.B
Du hast dir 100 Material für 0$ gekauft also den preis
nimmt er nicht an keiner mehr eine lösung?E: Text
-
new Wert,string[128],Preis = 3 * Wert;
"Wert" ist hier 0.
Du musst das nach dem sscanf teil scripten -
breadfish.de
Hat das Thema geschlossen.