Beiträge von Hohesgrass

    Hey Breadfisch Commmuniy,
    habe mich Heute an ein Autosystem gesetzt. Jetzt bin ich beim Motor an/ausschalten und Türen schließen hängengeblieben.


    Befehl fürs Autotür öffnen:

    (ein Code aus dem Forum, hatte davor einen eigenen, da war es allerdings der gleiche Fehler)



    dcmd_lock(playerid,vehicleid,params[])
    {
    new bool: Lock[MAX_VEHICLES];
    if(Lock[vehicleid] == true)
    {
    for(new i=0; i < MAX_PLAYERS; i++)
    {
    if(i == playerid) continue;
    SetVehicleParamsForPlayer(vehicleid,i,0,0);
    }
    GameTextForPlayer(playerid, "Fahrzeug: Aufgeschlossen", 5000, 6);
    Lock[vehicleid] = false;
    }
    else
    {
    for(new i=0; i < MAX_PLAYERS; i++)
    {
    if(i == playerid) continue;
    SetVehicleParamsForPlayer(vehicleid,i,0,1);
    }
    GameTextForPlayer(playerid, "Fahrzeug: Abgeschlossen", 5000, 6);
    Lock[vehicleid] = true;
    }
    return 1;
    }

    Ingame gibt er mir "Unknown Command" aus



    Motor starten

    public Motor(playerid,vehicleid)
    {
    if(Motoranaus[playerid] == 0)
    {
    new engine, lights, alarm, doors, bonnet, boot, objective;
    GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    Motoranaus[playerid] = 1;
    SendClientMessage(playerid,GELB,"Motor gestartet");
    return 1;
    }
    return 1;
    }


    Der Motor soll gestartet werden wenn ich eine Taste auf der Tastatur drücke.
    Er gibt zwar Die Message "Motor gestartet" aus aber nichts passiert


    Also unter OnPlayerKeyStateChange()

    if ((oldkeys & 2) && !(newkeys & 2))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    if(Motoranaus[playerid] == 0)
    {
    SetTimer("Motor",1,0);
    }
    }
    }

    Habe ich etwas falsch gemacht?


    MfG Hohesgrass

    @ Spersky
    Das Problem dabei ist das wir 2 Leute sind, und auch an unterschiedlichen Sachen arbeiten
    Das wird dann meist schon ziemlich viel Code. Das ist dann schwer diesen zu übertragen.

    Hey Breadfisch Community,
    gibt es eine möglichkeit 2 scripts zu Verschmelzen?


    Erklärung:
    Es gibt einen Hauptcode, dieser wird kopiert und bearbeitet. Jetzt möchte ich den bearbeiteten Code in meinen Hauptcode intigrieren. Da wir zu zweit am Server arbeiten wäre das echt Praktisch.


    Gibt es irgendein Tool oder eine Webseite mit der das möglich ist?

    Hey Breadfish Community,
    ich habe mich Heute an an Banksystem gesetzt. Ich erstellte also einen Dialog, der an einem anderen Spieler Geld überweisen soll.
    Allerdings bekomme ich beim Compilen folgenden Fehler:



    LyLy.pwn(3438) : error 001: expected token: "]", but found "-identifier-"
    LyLy.pwn(3438) : warning 215: expression has no effect
    LyLy.pwn(3438) : error 001: expected token: ";", but found "]"
    LyLy.pwn(3438) : error 029: invalid expression, assumed zero


    Hier der Dialog:



    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    switch(dialogid)
    {
    case DIALOG_UEBERWEISEN2:
    {
    if(response)
    {
    format(BankVar[playerid][bString2],sizeof(BankVar[playerid][bString2]),inputtext);
    BankVar[playerid][bMoney] = strval(BankVar[playerid][bString2]);
    LoadPlayer(playerid);
    if(BankVar[playerid][bMoney] > SpielerInfo[playerid][pBankKonto])
    {
    SendClientMessage(playerid,ROT,"[BANK] So viel Geld ist nicht auf deinem Konto");
    }
    else
    {
    BankVar[playerid][bNewMoney] = BankVar[playerid][bMoney] - SpielerInfo[playerid][pGeld];
    ResetPlayerMoney(BankVar[playerid][bPID]);
    GivePlayerMoney(BankVar[playerid][bPID],BankVar[playerid][bNewMoney]);
    SpielerInfo[playerid][pBankKonto] = SpielerInfo[playerid][pBankKonto] - BankVar[playerid][bMoney];
    format(BankVar[playerid][bString2],sizeof(BankVar[playerid][bString2]),"[BANK] %d wurde erfolgreich an den Spieler mit der ID &d überwiesen!",BankVar[playerid][bMoney],BankVar[playerid][bPID]);
    SendClientMessage(playerid,GELB,BankVar[playerid][bString2]);
    format(BankVar[playerid][bString2],sizeof(BankVar[playerid][bString2]),"[BANK] %d wurde erfolgreich an dein Bankkonto vom Spieler mit der ID &d überwiesen!",BankVar[playerid][bMoney],BankVar[playerid][bPID]);
    SendClientMessage(BankVar[playerid][vPID],GELB,BankVar[playerid][bString2]);
    }

    }
    }
    }
    }


    Hier die Enums:

    enum BankVars
    {
    bMoney,
    bNewMoney,
    bPID,
    bString,
    bString2
    }



    und die Variable:

    new BankVar[MAX_PLAYERS][BankVars];


    Kann ich das ganze überhaupt mit Enums machen?
    Wenn nein, wie geht es dann?



    MfG Hohesgrass

    Hey Breadfisch Community,
    wie es im Titel steht habe ich ein Problem mit meinen Krankenhaus System.


    Die Variablen 'First Spawn' und 'Krankenhaus' sind oben im Script richtig gesetzt.
    Ich bekomme auch keine Fehler beim Compilen.


    Mein Problem ist, dass ich die Spawn Position im Timer gesetzt habe, aber trotzdem an der an der normalen Spawn Position spawne (also nicht am Krankenhaus).


    Variablen

    new FirstSpawn[MAX_PLAYERS];
    new Krankenhaus[MAX_PLAYERS];


    OnPlayerSpawn

    if(FirstSpawn[playerid] == 0)
    {
    FirstSpawn[playerid] = 1;
    return 1;
    }




    OnPlayerDeath
    if(FirstSpawn[playerid] == 1)
    {
    SetPlayerCameraPos(playerid, 1200.0189,-1349.9330,17.1927,24.2789);
    SetPlayerCameraLookAt(playerid,1178.6764,-1324.9622,14.1318);
    ResetPlayerWeapons(playerid);
    SendClientMessage(playerid,BLAU,"Willkommen im Krankenhaus, deine Wunden werden geheilt!");
    SendClientMessage(playerid,BLAU,"Nach einer Minute wirst du aus dem Krankenhaus entlassen.");
    Krankenhaus[playerid] = 1;
    SetTimerEx("KrankenhausSpawn", 5000, false, "i", playerid);
    TogglePlayerControllable(playerid,0);
    SetPlayerPos(playerid,1162.871704, -1339.109619, 14.297291);
    }
    return 1;


    Timer


    public KrankenhausSpawn(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    if(Krankenhaus[playerid] == 1)
    {
    SendClientMessage(playerid,BLAU,"Du wurdest aus dem Krankenhaus entlassen.");
    Krankenhaus[playerid] = 0;
    SetPlayerPos(playerid,1178.6764,-1324.9622,14.1318); //hier setzt er die Position am Krankenhaus
    SetPlayerHealth(playerid,100);
    SetCameraBehindPlayer(playerid);
    }
    }
    }


    MfG Hohesgrass