PlayerInfo von 0 zu 1

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
  • Hallo Breadfish,
    ich habe ein problem ic will wen man sich das übern dialog kauft das in der PlayerInfo z.b CarL 0 in 1 gemacht wir komme lieder net drauf wie das ging.


    if(dialogid == DIALOG_Buy_Licens)
    {
    if(response)
    {
    if(listitem == 0)
    {
    if(GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid,Rot," Du besitzt nicht das nötige Geld.");
    SendClientMessage(playerid,Grün," Du hast dir für 2000$ einen Auto-Fühererschein Gekauft.");
    GivePlayerMoney(playerid,-2000);
    PlayerInfo[CarL] = 1;
    return true;
    }
    if(listitem == 1)
    {
    if(GetPlayerMoney(playerid) < 1500) return SendClientMessage(playerid,Rot," Du besitzt nicht das nötige Geld.");
    SendClientMessage(playerid,Grün," Du hast dir für 1500$ einen Motorad-Fühererschein Gekauft.");
    GivePlayerMoney(playerid,-1500);
    PlayerInfo[BikeL] = 1;
    return true;
    if(listitem == 2)
    {
    if(GetPlayerMoney(playerid) < 11000) return SendClientMessage(playerid,Rot," Du besitzt nicht das nötige Geld.");
    SendClientMessage(playerid,Grün," Du hast dir für 11000$ einen Flug-Schein Gekauft.");
    GivePlayerMoney(playerid,-11000);
    PlayerInfo[FlyL] = 1;
    return true;
    }
    und wie kan ich machen das z.b das mann für carid 555 eine bikel haben muss ??


    MFG und Danke
    CapCon

    ↓Das ist der Youtube Channel von mir und meinen Kollegen↓



    Sa-Mp Server [Im Aufbau/Beta]
    128.65.216.200:7777

  • Naja, da fragste einfach ab, ob die Variable PlayerInfo[CarL] auf 0 steht, wenn ja, setzt du sie auf 1, wenn nicht, dann lässt du es so.


    Also z.B.


    if(listitem == 0)
    {
    if(PlayerInfo[CarL] == 0)
    {
    if(GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid,Rot," Du besitzt nicht das nötige Geld.");
    SendClientMessage(playerid,Grün," Du hast dir für 2000$ einen Auto-Fühererschein Gekauft.");
    GivePlayerMoney(playerid,-2000);
    PlayerInfo[CarL] = 1;
    }
    return true;
    }



    if(PlayerInfo[BikeL] == 1)
    {
    Do that!
    }
    else
    {
    DU hast kein Motorradführerschein!
    }


    //EDit 1: Das "Do That" damit ersetzen, was passieren soll, wenn er nen Motorradführerschein hat!
    //Edit 2: Etwas behoben

  • Zitat

    PlayerInfo[CarL] = 1;


    Da fehlt die Playerid. Das musst du noch richtig machen.


    Bei OnPlayerStateChange musst du das einfügen:
    if(newstate == PLAYER_STATE_DRIVER && GetVehicleModel(GetPlayerVehicleID(playerid)) == 555 && PlayerInfo[playerid][BikeL] != 1)
    {
    RemovePlayerFromVehicle(playerid);
    }


    /edit: Fixed

    the ones who are crazy enough to think that they can change the world, are the ones who do
    - Steve Jobs

  • Du musst da einen Spieler bestimmen, bei dem etwas passieren soll.
    Standard ist eigentlich:
    PlayerInfo[playerid][variable]


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(GetVehicleModel(vehicled) == 555)
    {
    if(!PlayerInfo[BikeL] == 1)
    {
    SendClientMessage(playerid,FARBE,"Du hast keinen Motorradschein");
    RemovePlayerFromVehicle(playerid);
    }
    }
    }

    Nur wenn man das Unmögliche versucht kann man das absolut Mögliche erreichen
    Hermann Hesse


    „Was manche Menschen sich selber vormachen, das macht ihnen so schnell keiner nach.”
    Gerhard Uhlenbruck

  • PlayerInfo[CarL] = 1;


    ich habe bei allen drei das nu mit Bikel und FlyL


    D:\Alles Mögliche\Script\Reallife-Script\gamemodes\GBR.pwn(1805) : error 033: array must be indexed (variable "PlayerInfo")
    D:\Alles Mögliche\Script\Reallife-Script\gamemodes\GBR.pwn(1813) : error 033: array must be indexed (variable "PlayerInfo")
    D:\Alles Mögliche\Script\Reallife-Script\gamemodes\GBR.pwn(1815) : warning 225: unreachable code
    D:\Alles Mögliche\Script\Reallife-Script\gamemodes\GBR.pwn(1815) : warning 217: loose indentation
    D:\Alles Mögliche\Script\Reallife-Script\gamemodes\GBR.pwn(1820) : error 033: array must be indexed (variable "PlayerInfo")
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    3 Errors.

    ↓Das ist der Youtube Channel von mir und meinen Kollegen↓



    Sa-Mp Server [Im Aufbau/Beta]
    128.65.216.200:7777

  • Simpel:
    und (vehicled) das acht error in meiem script
    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(GetVehicleModel(vehicled) == 555)*wie füge ich mehrere ein *
    {
    if(!PlayerInfo[BikeL] == 1)
    {
    SendClientMessage(playerid,FARBE,"Du hast keinen Motorradschein");
    RemovePlayerFromVehicle(playerid);
    }
    }
    }



    sry gemerkt aber noch 2warnings bei if listiteam 2


    if(dialogid == DIALOG_Buy_Licens)
    {
    if(response)
    {
    if(listitem == 0)
    {
    if(GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid,Rot," Du besitzt nicht das nötige Geld.");
    SendClientMessage(playerid,Grün," Du hast dir für 2000$ einen Auto-Fühererschein Gekauft.");
    GivePlayerMoney(playerid,-2000);
    PlayerInfo[playerid][CarL] = 1;
    return true;
    }
    if(listitem == 1)
    {
    if(GetPlayerMoney(playerid) < 1500) return SendClientMessage(playerid,Rot," Du besitzt nicht das nötige Geld.");
    SendClientMessage(playerid,Grün," Du hast dir für 1500$ einen Motorad-Fühererschein Gekauft.");
    GivePlayerMoney(playerid,-1500);
    PlayerInfo[playerid][BikeL] = 1;
    return true;
    if(listitem == 2)*FEHLER in dieser zeile*
    {
    if(GetPlayerMoney(playerid) < 11000) return SendClientMessage(playerid,Rot," Du besitzt nicht das nötige Geld.");
    SendClientMessage(playerid,Grün," Du hast dir für 11000$ einen Flug-Schein Gekauft.");
    GivePlayerMoney(playerid,-11000);
    PlayerInfo[playerid][FlyL] = 1;
    return true;
    }


    kan den keiner helfen oder will jemand per tv addet mich im skype CapCon97

    ↓Das ist der Youtube Channel von mir und meinen Kollegen↓



    Sa-Mp Server [Im Aufbau/Beta]
    128.65.216.200:7777

    2 Mal editiert, zuletzt von EliteBread () aus folgendem Grund: TEXT

  • Sorry hatte einen Rechtschreibfehler.
    Mach daraus ein vehicleid


    //EDIT
    Und aus PlayerInfo[BikeL] ein PlayerInfo[playerid][BikeL]

    Nur wenn man das Unmögliche versucht kann man das absolut Mögliche erreichen
    Hermann Hesse


    „Was manche Menschen sich selber vormachen, das macht ihnen so schnell keiner nach.”
    Gerhard Uhlenbruck

  • if(dialogid == DIALOG_Buy_Licens)
    {
    if(response)
    {
    if(listitem == 0)
    {
    if(GetPlayerMoney(playerid) < 2000) return SendClientMessage(playerid,Rot," Du besitzt nicht das nötige Geld.");
    SendClientMessage(playerid,Grün," Du hast dir für 2000$ einen Auto-Fühererschein Gekauft.");
    GivePlayerMoney(playerid,-2000);
    PlayerInfo[playerid][CarL] = 1;
    return true;
    }
    if(listitem == 1)
    {
    if(GetPlayerMoney(playerid) < 1500) return SendClientMessage(playerid,Rot," Du besitzt nicht das nötige Geld.");
    SendClientMessage(playerid,Grün," Du hast dir für 1500$ einen Motorad-Fühererschein Gekauft.");
    GivePlayerMoney(playerid,-1500);
    PlayerInfo[playerid][BikeL] = 1;
    return true;
    }
    if(listitem == 2)
    {
    if(GetPlayerMoney(playerid) < 11000) return SendClientMessage(playerid,Rot," Du besitzt nicht das nötige Geld.");
    SendClientMessage(playerid,Grün," Du hast dir für 11000$ einen Flug-Schein Gekauft.");
    GivePlayerMoney(playerid,-11000);
    PlayerInfo[playerid][FlyL] = 1;
    return true;
    }
    }
    }
    return 1;
    }



    habe probelm mit dem return unten

    ↓Das ist der Youtube Channel von mir und meinen Kollegen↓



    Sa-Mp Server [Im Aufbau/Beta]
    128.65.216.200:7777

  • Nein aber ICQ, schreib PN.

    Nur wenn man das Unmögliche versucht kann man das absolut Mögliche erreichen
    Hermann Hesse


    „Was manche Menschen sich selber vormachen, das macht ihnen so schnell keiner nach.”
    Gerhard Uhlenbruck