Moin;
ich arbeite zurzeit an einem kleinen Rucksack-System. In diesem teste ich gerade, ob sich meine
Waffe im Rucksack speichert. Ich habe aber bemerkt, dass da kompletter Humbug rauskommt...
sowohl InGame als auch Datenbank bzw. der Mist, der InGame zusehen ist, den sieht man auch
in den Datenbankeinträgen gespeichert:
enum SPDaten
{
//Sind natürlich einige^^ Sachen mehr... hab sie nur raus genommen, um eine Übersicht zu haben.
Rucksack,
RobKeys,
BPGun1,
BPGun2,
BPGun3
}
new Spieler[MAX_PLAYERS][SPDaten];
//Der Befehl, mit dem der Rucksack aufgerufen wird:
ocmd:openbackpack(playerid, params[])
{
new string[128];
format(string, sizeof(string),"Waffe: %d Munition: %d \nWaffe: %d Munition: %d \nWaffe: %d Munition: %d \nDrugs: %d \nBombe(n): %d \nGeld: %d",
Spieler[playerid][BPGun1], Spieler[playerid][BPGun2], Spieler[playerid][BPGun3], Spieler[playerid][BackDrugs], Spieler[playerid][TBombBack], Spieler[playerid][Money]);
ShowPlayerDialog(playerid, DIALOG_BACKPACK, DIALOG_STYLE_LIST,"Rucksack",string,"Nehmen","Abbrechen");
return 1;
}
//Die zwei Dialoge, die hauptsächlich am System dran sind:
if(dialogid == DIALOG_BACKPACK)
{
if(response)
{
if(listitem == 0)
{
ShowPlayerDialog(playerid, DIALOG_GUNOPTION1, DIALOG_STYLE_MSGBOX, "Rucksack: Waffe 1","Lege deine gewünschte Waffe hier rein. Dazu musst du nur auf sie scrollen und hier auf >> reinlegen << drücken.\nUm diese wieder >> rauszuholen <<, musst du sie im Menu auswählen und auf >> rausholen << drücken.","Reinlegen","Rausholen");
}
}
}
if(dialogid == DIALOG_GUNOPTION1)
{
//new weaponname = GetPlayerWeapon(playerid), wename = GetWeaponModelIDFromName(weaponname), wammo = GetPlayerAmmo(playerid), ;
new wammo = GetPlayerAmmo(playerid), weaponid = GetPlayerWeapon(playerid);
if(response)
{
if(weaponid != 0)
{
format(Spieler[playerid][BPGun1], 100, "Waffe: %d");
RemoveWeaponForPlayer(playerid, weaponid);
}
}
else
{
GivePlayerWeapon(playerid, weaponid, wammo);
SendClientMessage(playerid, -1, "Du hast eine solche Waffe nicht im Rucksack.");
}
}
//Ich weiß nicht, wie ich abfragen kann, ob der Slot KEINEN PLATZ zum REINLEGEN hat bzw. NICHTS zum RAUSNEHMEN hat.
So sieht es dann InGame aus. Wenn ich mir eine Waffe gebe mit 2k Munition und Sie dann reinlege, dann passiert das nur
mit halbem Erfolg, denn die 2k-Waffe ist zwar weg und im Rucksack stehen auch zahlen, aber das ist einfach zu wenig
und zudem auch noch falsch verteilt (zweite Reihe spielt mit, obwohl ich es nur der 1. Reihe zuweise - BPGun1):
Mit freundlichen Grüßen
Kristik47