Beiträge von NicoAiko


    static gTeam[MAX_PLAYERS]; //glaube normal für gTeam
    case 0: gTeam[playerid] = TEAM_Swat; //Das bedeutet das Skin 0 (Mittlerweile solltet ihr ja wissen das 0 = 1 ist!) im Ersten Team spielt!
    case 1: gTeam[playerid] = TEAM_Swat;
    //die ; am ende machen!

    statt #define gTEAM musst du static gTeam[MAX_PLAYERS]
    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\Gamemode.pwn(14) : warning 201: redefinition of constant/macro (symbol "gTEAM[MAX_PLAYERS]")
    bedeutet das du das schonmal definiert hast
    //edit die anderen errors kommen deswegen weil du kein ; am ende benutzt

    C:\Users\Ey_havar\Desktop\Samp~~~Server\gamemodes\Gamemode.pwn(13) : warning 201: redefinition of constant/macro (symbol "gTEAM{MAX_PLAYERS]")



    in gTeam[MAX_PLAYERS] ändern
    du hast ne {
    //edit pls zeile 74 posten

    echt? weil hp2 wird nur in getplayerhealth benutzt aber nicht damit definiert
    sprich: new Float:hp2; GetPlayerHealth(i,hp2); SetPlayerHealth(i,hp2+hp); <- Du
    new Float:hp2 = GetPlayerHealth(i,hp2); SetPlayerHealth(i,hp2+hp); <- Ich

    ganz einfach

    if(listitem==0)
    {
    new Float:health;
    SetPlayerHealth(playerid,GetPlayerHealth(playerid,health)+5);
    GivePlayerMoney(playerid,-4);
    }

    oder so wie ichs habe

    stock AddPlayerHealth(playerid,Float:blubbi)//irgwo ganz unten
    {
    new Float:GetHPFromPlayer;
    SetPlayerHealth(playerid,GetPlayerHealth(playerid,GetHPFromPlayer)+blubbi);
    return GetHPFromPlayer;
    }
    //und dann
    if(listitem==0)
    {
    AddPlayerHealth(playerid,5);
    GivePlayerMoney(playerid,-4);
    }

    //edit @ Inter & Neo

    stock GivePlayerHealth(id,Float:hp)
    {
    new Float:hp2;
    GetPlayerHealth(id,hp2);
    SetPlayerHealth(id,hp2+hp);//das hier
    return 1;
    }

    müsste falsch sein(makierung) außer du machst es so

    stock GivePlayerHealth(id,Float:hp)
    {
    new Float:hp2 = GetPlayerHealth(id,hp2);
    SetPlayerHealth(id,hp2+hp);
    return 1;
    }

    Zitat

    das geht auch kürzer :D


    einzige schwäche die ich net lösen kann ist beim quadrieren die 2te zahl weg zu lassen(außer natürlich in die else if abfrage rein zu tun aber das müsste ich dann bei allen machen und das wäre wieder mehr zeilen xD
    //edit mein taschenrechner (in 10 minuten)

    Zitat

    PutPlayerInVehicle(playerid,carid, 0);//und hier wird der spieler in das auto gesetzt

    wird gar nicht gebraucht, hab ich auch net da der spieler im fahrzeug drin ist, wird der spieler sozusagen "deaktiviert" und putplayerinvehicle ist unnütz. ^^


    einfaches beispiel:

    new spieler[MAX_PLAYERS] = 1; // Das bist du, die 1 steht dafür das du normal gehst (also nicht im auto bist)
    new auto[MAX_PLAYERS] = 0; // das ist das auto in das du einsteigen wirst... (also noch deaktiviert)
    //jetzt ein standart callback
    public OnPlayerEnterVehicle(playerid,vehicleid,ispassenger)
    {
    spieler[playerid] = 0; //der spieler wird deaktiviert das heißt du gehst in den automodus
    auto[playerid] = 1; //du bist nun im auto und der automodus ist aktiviert.
    return 1;
    }
    //jetzt wenn er aussteigt
    public OnPlayerExitVehicle(playerid,vehicleid)
    {
    spieler[playerid] = 1;
    auto[playerid] = 0;
    //wieder normalzustand
    return 1;
    }
    //jetzt der befehl (ich hab ocmd)
    ocmd:gotols(playerid,params[])
    {
    if(GetPVarInt(playerid,"Adminlevel") >= 1)//ich benutz kein enum :P (das ist das gleiche wie PlayerInfo/Spieler/etc.pp.)
    {
    if(IsPlayerInAnyVehicle(playerid))// <-- das ist das gleiche wie if(auto[playerid] == 1)
    SetVehiclePos(GetPlayerVehicleID(playerid),x,y,z);//x,y,z sind die koordinaten
    else SetPlayerPos(playerid,x,y,z); // siehe oben ^^
    }
    else return SendClientMessage(playerid,rot,"Du bist nicht befugt diesen befehl zu nutzen!");
    return 1;
    }
    hoffe konnte helfen

    Hallo liebe Brotfische heute stelle ich euch mal mein Tutorial vom Definieren von Fraktionsfahrzeugen.
    Schritt 1:
    Wir erstellen ein enum:

    enum cInfo //name des enums (einstellbar)
    {
    fcid // ebenfalls einstellbar (das ist der name für die definition)
    };
    new FVehi[MAX_VEHICLES][cInfo];//Das ist das new für den enum (sowie PlayerInfo/Spieler o.a.)
    Das brauchen wir für den Befehl (Siehe Schritt: 4)


    Schritt 2:
    Wir erstellen die definition für die Cars:

    //new fcname[anzahl der cars];
    //nun ein Beispiel:
    new pdcars[1];//pd ist ja allgemein bekannt (polizei) [1] ist die anzahl der cars


    Schritt 3:
    nun kommen wir zur definition mit "pdcars" (siehe Schritt: 2)

    public OnGameModeInit()
    {
    pdcar[0] = AddStaticVehicle(id,usw...); //pdcar[0] weil man immer mit [0] anfängt
    SetFJCarID(pdcar[0],1); //pdcar[0] angleichen an die definition die 1 steht für das team bzw den job (siehe Schritt: 4)
    return 1;
    }
    Schritt 4:
    der Befehl ist eigentlich ganz simpel,

    stock SetFJCarID(carid,zahl) //carid ist eigentlich klar... (die definition eines Fahrzeugs); zahl ist der wert den du eingibst
    {
    return FJVehi[carid][fcid] = zahl; //die carid sorgt dafür das es ein vehicle ist; fcid wisst ihr ja; das wird dann in die zahl geändert.
    }

    Vorsicht:
    - 1. keine Float-Zahlen, aber wenn du das so haben willst, dann fcid in Float:fcid ändern
    - 2. die Jobzahlen & Fraktionszahlen nicht zusammen mischen d.h. kein SetFJCarID(bus[0],1); & SetFJCarID(pdcar[0],1); das würde dazu führen, dass es zur überschneidung kommt. also pdcar,1 bus,2 usw.


    Bugs & Errors bitte melden
    danke :)

    mach ma n else unter der rangeofpoint klammer

    ein else return SendClientMessage(playerid,rot,"Du bist nicht am/in der ATM/Bank!");
    MfG

    Hallöle Brotfische,


    ich habe ein Problem unzwar das ich versuche, dass ich ein Register/Login GUI System zu machen das ganz ohne enum ist sondern nur mit PVars aber es klappt mit dem Login Teil noch nicht ganz.
    Hier die Errors:
    C:\Users\Nico\Desktop\server 0.3b\gamemodes\LSRL-Script.pwn(1970) : error 035: argument type mismatch (argument 1)
    und hier die Zeile
    if(strcmp(GetPVarString(playerid,"Passwort",string,128),inputtext,true))
    ich bekomm das nicht ganz hin...


    Vielen Dank im voraus


    MfG :thumbup:


    //edit Überschrift geändert zur Sache weswegen der Thread

    public OnPlayerStateChange(playerid,newstate,oldstate)
    {
    if(newstate == PLAYER_STATE_ONFOOT || newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_DRIVER)
    {
    if(IstSpielerInGangzone(playerid))//anpassen mit einer public oder mit IsPlayerInRangeOfPoint/PlayerToPoint(GF)
    {
    for(new i=0;i<13;i++)
    {
    new weapon[13][2];
    PlayerWeapons[playerid] = GetPlayerWeaponData(playerid,i,weapon[i][0],weapon[i][1]);
    PlayerWeaponAmmo[playerid] = GetPlayerAmmo(playerid);
    ResetPlayerWeapons(playerid);
    }
    }
    else
    {
    GivePlayerWeapon(playerid,PlayerWeapons[playerid],PlayerWeaponAmmo[playerid]);
    }
    }
    return 1;
    }
    //edit public vergessen
    //edit 2 waffensache geändert
    //edit 3 Klammerfehler weggemacht