GANZ UNTEN LESEN BITTE
Hilfe! (Medipack Feature) (Bin neu :P)
- HappyHami
- 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
-
-
Guten Tag,
Dies kannst Du mit ein Paar kleinen Abfragen machen
Wie Speicherst du denn die Systeme?
Und bitte Poste, mal deine Shop-ZeilenMFG
ShiNuX -
Ja, du machst das mit einer Player Variable, also so:
//oben in deinem Script
new pack[MAX_PLAYERS];//dein Heal Pack Befehl
if(pack[playerid] == 1) return SendClientMessage(playerid, rot,"Du besitzt bereits einen Heal Pack !");
pack[playerid] = 1;//und der Heal Command
if (strcmp("/heal", cmdtext, true, 10) == 0)
{
if(pack[playerid] == 0) return SendClientMessage(playerid, rot,"Du hast kein Heal Pack mehr !");
pack[playerid] = 0;
SetPlayerHealth(playerid,100);
return 1;
}mfg.
-
if(pack[playerid] == 1) return SendClientMessage(playerid, rot,"Du besitzt bereits einen Heal Pack !");
pack[playerid] = 1;wo füge ich des ein :)?
-
ind die schleife deines Commands.. du kannst mit dem beispiel aber nach gebrauch eines packetes ein neues kaufen.
-
Meinst du des so?
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/heal", cmdtext, true, 10) == 0)
{
if(pack[playerid] == 0) return SendClientMessage(playerid, 0xFF0000FF,"Du hast kein Heal Pack mehr !");
pack[playerid] = 0;
SetPlayerHealth(playerid,100);
return 1;
}
return 0;
}und wo genau kommt das andere jetzt hin :D?
-
Ja, du machst das mit einer Player Variable, also so:
//oben in deinem Script
new pack[MAX_PLAYERS];//dein Heal Pack Befehl
if(pack[playerid] == 1) return SendClientMessage(playerid, rot,"Du besitzt bereits einen Heal Pack !");
pack[playerid] = 1;//und der Heal Command
if (strcmp("/heal", cmdtext, true, 10) == 0)
{
if(pack[playerid] == 0) return SendClientMessage(playerid, rot,"Du hast kein Heal Pack mehr !");
pack[playerid] = 0;
SetPlayerHealth(playerid,100);
return 1;
}mfg.
also noch genauer gehts doch wohl garnicht. wenn du nicht scripten kannst, warum machst du dich gleich an sowas? fang doch erstmal mit was leichtem an.
-
-
Ich muss doch nur wissen unter was das genau kommt ?´!
if(pack[playerid] == 1) return SendClientMessage(playerid, rot,"Du besitzt bereits einen Heal Pack !");
pack[playerid] = 1;?!
-
jetzt mal ne ganz ehrliche frage... kannst du lesen???
//dein Heal Pack Befehl
if(pack[playerid] == 1) return SendClientMessage(playerid, rot,"Du besitzt bereits einen Heal Pack !");
pack[playerid] = 1;was teht da drüber in grün?? du willst doch nur, dass man es dir macht. selbst ist die frau von heute.
-
das kommt in deinen /heal command rein -.-
-
Du hast jetzt zwei Threads aufgemacht mit diesem Account und einen anderen mit deinem wahrscheinlich anderen account. Sowas nennt man Multiaccount und ist verboten. Wenn du was wissen möchtest schreibs in deinen alten Thread. Und nicht immer neue eröffnen.
//Siehe Script Base sind 3 Threads von ihm drin mit dem gleichen Thema, eins wurde vor kurzem gelöscht.
MFG
-
Ich habs im Script gemacht, das KEINE ERRORS ODER WARNINGS mehr kommen, nur das Problem ist jetzt
das wenn man das medipack im shop kauft, man das Leben sofort geresettet kriegt, es sol aber nur resetten wenn man /heal schreibt, wie geht das?
Hier ist der Command:
if (strcmp("/heal", cmdtext, true, 10) == 0)
{
if(pack[playerid] == 0) return SendClientMessage(playerid, 0xFF0000FF,"Du hast kein Medipack mehr !");
pack[playerid] = 0;
SetPlayerHealth(playerid,100);
SendClientMessage(playerid, 0x00C100FF,"Du hast dich geheilt.");
if(pack[playerid] == 1) return SendClientMessage(playerid, 0xFF0000FF,"Du besitzt bereits einen Medipack !");
pack[playerid] = 1;
return 1;
}Hier der Shop:
}
if(listitem == 1)
{
SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir ein Medipack gekauft!");
SetPlayerHealth(playerid,100);
GivePlayerMoney(playerid,-1000);
return 1;
}Wie geht es,das wenn er auf dem listitem 1 , es kauft und er ein "medipack" erhält, aber das leben immeroch so bleibt wie es war, und erst wenn er /heal schreibt, das das leben aufgefüllt wird?
-
if(listitem == 1)
{
SendClientMessage(playerid,0x7AA4A6FF,"Du hast dir ein Medipack gekauft!");
SetPlayerHealth(playerid,100); //<<<<< fällt dir was auf??
GivePlayerMoney(playerid,-1000);
return 1;
} -
Ja ach ^^, ich habs jetzt entfernt, aber wie sonst soll das leben geresettet werden ?! wenn man drauf klickt,bzw. es kauft dann passiert nichts, nur geld wird weg genommen, aber man soll sein leben dann im laufe des games mit /heal resetten, das aber auch nur wenn man es im shop gekauft hat! Also was muss ich ändern
-
du musst auch nen befehl dafür machen und dort die abfrage einbauen, die kaliber dir schon gegeben hat.
if(pack[playerid] == 1) return SendClientMessage(playerid, 0xFF0000FF,"Du besitzt bereits einen Medipack !");
pack[playerid] = 1;
das kommt dann in den befehl rein und nicht in den /heal befehl. -
Sry, die abfrage musst du in ein /kaufemp befehl einbauen.
-
breadfish.de
Hat das Thema geschlossen.