Wichtig! Brauche hilfe bei einem Scriptteil

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
  • //command
    if (strcmp(cmdtext, "/kill", true) ==0)
    {
    SetPlayerHealth(playerid,0.0);
    kill[playerid] = 1;
    return 1;
    }
    //Death
    public OnPlayerDeath(playerid, killerid, reason)
    {
    if (kill[playerid] == 1)
    {
    TogglePlayerSpectating(playerid, 0);
    }
    else
    {
    new string[48];
    TogglePlayerSpectating(playerid, true);
    PlayerSpectatePlayer(playerid, killerid);
    new Float:health;
    new name[MAX_PLAYER_NAME];
    GetPlayerName(killerid, name, sizeof(name));
    GetPlayerHealth(killerid, health);
    format(string, sizeof(string), "Spectating:~n~%s",name);
    GameTextForPlayer(playerid, string, 7000, 3);
    SetTimerEx("STOPSPECCINGNOW", 10000 , 0, "d", playerid);
    }
    return 1;
    }



    Hier kriege ich folgende Errors:



    Weiss irgendwie nicht wie es weitergehen soll. ;(



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • Ist das dein ganzes Script? Wenn nein, poste mal den Rest.
    Weil z.B. dieser Teil steht ja in gar keinem Zusammenhang:
    //command
    if (strcmp(cmdtext, "/kill", true) ==0)
    {
    SetPlayerHealth(playerid,0.0);
    kill[playerid] = 1;
    return 1;
    }

  • Also ich finde schon...da drüber steht doch //command.


    Das soll heißen, dass das unter public OnPlayerCommandText kommt.


    (ich gebs ja zu ich war zu faul das mit rein zumachen; naja habs halt vergessen mit reinzumachen)


    Aber trotzdem kriege ich die Errors.


    -Und "ja" das ist das ganze Script; bei mir werden nicht funktionierende Scripts erstmal seperat gemacht.


    Der Rest ist halt standart (leer).



    Hinweis: Keinen Kontakt über TeamViewer oder Skype !
    Grüßt den Fehlerklärbär von mir.
    Coming soon: Pawn-Café ( Concept-Sharing | Scripting-First-Aid )

  • Ok, aber so kann man mit den Zeilenangaben in den Errors nichts anfangen.


    Hmm also ich kann nur lesen, was der Compiler sagt, und der sagt unter anderem, dass er die Variable "kill" nicht kennt.
    (105) : error 017: undefined symbol "kill"

  • Also ich hab das Mal so kurz in ein Skript reingeschrieben. Was anders ist als bei dir: oben hab ich kill initialisiert und bei OnPlayerCommand hat am Schluss ein return 0; gefehlt, das hätte aber nur zu einem warning geführt.


    #include <a_samp>


    new kill[MAX_PLAYERS];


    public OnFilterScriptInit()
    {
    print("PlayerSpec");
    return 1;
    }
    public OnPlayerDeath(playerid, killerid, reason)
    {
    if (kill[playerid] == 1)
    {
    TogglePlayerSpectating(playerid, 0);
    }
    else
    {
    new string[48];
    TogglePlayerSpectating(playerid, true);
    PlayerSpectatePlayer(playerid, killerid);
    new Float:health;
    new name[MAX_PLAYER_NAME];
    GetPlayerName(killerid, name, sizeof(name));
    GetPlayerHealth(killerid, health);
    format(string, sizeof(string), "Spectating:~n~%s",name);
    GameTextForPlayer(playerid, string, 7000, 3);
    SetTimerEx("STOPSPECCINGNOW", 10000 , 0, "d", playerid);
    }
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp(cmdtext, "/kill", true) ==0)
    {
    SetPlayerHealth(playerid,0.0);
    kill[playerid] = 1;
    return 1;
    }
    return 0;
    }

    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase

    Kein Error


    EDIT: Ähh dass ist jetzt natürlich kein funktionierendes skript, das ist mir auch klar. (Komisch eigentlich, dass er jetzt keinen Error bringt bei SetTimerEx("STOPSPECCINGNOW", 10000 , 0, "d", playerid); ...)

    2 Mal editiert, zuletzt von mako ()

  • hab noch was verändert da inner mitte
    #include <a_samp>


    new kill[MAX_PLAYERS];


    public OnFilterScriptInit()
    {
    print("PlayerSpec");
    return 1;
    }
    public OnPlayerDeath(playerid, killerid, reason)
    {
    if (kill[playerid] == 1)
    {
    TogglePlayerSpectating(playerid, 0);
    /*haumma hier noch sowas rein sonst gehts nur einmal pro spieler*/
    kill[playerid]=0;
    }
    else
    {
    new string[48];
    TogglePlayerSpectating(playerid, true);
    PlayerSpectatePlayer(playerid, killerid);
    new Float:health;
    new name[MAX_PLAYER_NAME];
    GetPlayerName(killerid, name, sizeof(name));
    GetPlayerHealth(killerid, health);
    format(string, sizeof(string), "Spectating:~n~%s",name);
    GameTextForPlayer(playerid, string, 7000, 3);
    SetTimerEx("STOPSPECCINGNOW", 10000 , 0, "d", playerid);
    }
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp(cmdtext, "/kill", true) ==0)
    {
    SetPlayerHealth(playerid,0.0);
    kill[playerid] = 1;
    return 1;
    }
    return 0;
    }

    ________________________________________________________________________________
    Meine Scriptdingenserzeugnisse und hilfen xD:


    [TUT]Variablen [INC]YodasInc

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen