Motor- und Tanksystem

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
  • Folgende Errors habe ich:



    C:\Users\Ich\Desktop\Scripting\samp03x_svr_R1-2_win32\gamemodes\DmGl.pwn(1135) : warning 235: public function lacks forward declaration (symbol "BenzinVerlust")
    C:\Users\Ich\Desktop\Scripting\samp03x_svr_R1-2_win32\gamemodes\DmGl.pwn(1155) : warning 235: public function lacks forward declaration (symbol "Auftanken")


    Kann mir da jemand helfen an was es liegen kann?



    public BenzinVerlust()
    {
    for(new i=0; i<MAX_VEHICLES; i++)
    {
    if (Motor == true)
    {
    Tank = Tank-1;

    if (Tank<1)
    {
    Tank = 0;
    GetVehicleParamsEx(i,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(i,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    Motor = false;
    }
    }
    }
    return 1;
    }


    public Auftanken(playerid)
    {
    new car = GetPlayerVehicleID(playerid);
    Tank[car] = Tank[car] +1;
    if(Tank[car] >= 100)
    {
    Tanktgerade[car] = false;
    Tank[car] = 100;
    TogglePlayerControllable(playerid,1);
    KillTimer(tanktimer[playerid]);
    }
    return 1;
    }
    [i][i]


    [/i][/i]forwart BenzinVerlust();
    forwart Auftanken(playerid);[i][i]
    [/i][/i]

  • Es heißt forward, nicht forwart. Einfach umändern, danach sollte es funktionieren.

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

  • ich habe mir das Tut schonmal angeguckt...damals hat es auch geklappt.
    Nur jetzt wo ich es wieder haben will geht es nicht :-/
    Ich habe vllt. irgendwas vergessen oder so ^^


    Hier die Errors:



    Felix.pwn(232) : error 017: undefined symbol "playerid"
    Felix.pwn(233) : error 017: undefined symbol "playerid"
    Felix.pwn(234) : error 017: undefined symbol "playerid"
    Felix.pwn(235) : error 017: undefined symbol "playerid"
    Felix.pwn(236) : error 017: undefined symbol "playerid"



    //edit:


    hier die zeilen:



    Anzeige[playerid] = TextDrawCreate(630.0,410.0," ");
    TextDrawSetOutline(Anzeige[playerid], 1);
    TextDrawAlignment(Anzeige[playerid], 3);
    TextDrawSetShadow(Anzeige[playerid], 0);
    TextDrawShowForPlayer(playerid,Anzeige[playerid]);


    BITTE helft mir! :S


    lg :thumbup:

    New Nexo Reallife.


    <3

  • Mach das so:


    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    Anzeige[i] = TextDrawCreate(630.0,410.0," ");
    TextDrawSetOutline(Anzeige[i], 1);
    TextDrawAlignment(Anzeige[i], 3);
    TextDrawSetShadow(Anzeige[i], 0);
    TextDrawShowForPlayer(playerid,Anzeige[i]);
    }
    Du kannst in OnGameModeInit kein "playerid" benutzen, da musst du dann eine For Schleife durch laufen lassen, und dann anstatt das [playerid] ein [i] eintragen!


    Grüße,
    TheBester

  • C:\Users\Nick\Desktop\Neuer Ordner\gamemodes\tutorial_22.pwn(787) : error 029: invalid expression, assumed zero
    C:\Users\Nick\Desktop\Neuer Ordner\gamemodes\tutorial_22.pwn(787) : warning 215: expression has no effect
    C:\Users\Nick\Desktop\Neuer Ordner\gamemodes\tutorial_22.pwn(787) : error 001: expected token: ";", but found "if"
    C:\Users\Nick\Desktop\Neuer Ordner\gamemodes\tutorial_22.pwn(789) : error 029: invalid expression, assumed zero
    C:\Users\Nick\Desktop\Neuer Ordner\gamemodes\tutorial_22.pwn(789) : warning 215: expression has no effect
    C:\Users\Nick\Desktop\Neuer Ordner\gamemodes\tutorial_22.pwn(789) : error 001: expected token: ";", but found "if"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.


    Brauche Hilfe da kommt immer das raus :(
    Mein Text:
    if(strcmp(cmdtext, "/tanken", true) == 0)
    {
    else if (GetPlayerVehicleSeat(playerid) != 0) return SendClientMessage(playerid,ROT,"Du bist in keinem Fahrzeug (oder kein Fahrer).");
    new car = GetPlayerVehicleID(playerid);
    else if (TanktGerade[car]) return SendClientMessage(playerid,ROT,"Du tankst schon!");
    else if (Motor[car] == true) return SendClientMessage(playerid,ROT,"Du musst vor dem Tanken den Motor ausschalten.");
    new ZuTanken = 100-Tank[car];
    new preis = ZuTanken * BENZINPREIS;
    if (GetPlayerMoney(playerid)-preis < 0) return SendClientMessage(playerid,ROT,"Du hast nicht genug Geld!");
    GivePlayerMoney(playerid, -preis);
    SendClientMessage(playerid, weiß, "Tanken wird gestartet.");
    SetCameraBehindPlayer(playerid);
    TogglePlayerControllable(playerid,0);
    TanktGerade[car] = true;
    tanktimer[playerid] = SetTimerEx("Auftanken",500,true,"i",playerid);
    return 1;
    }