Beiträge von Kaliber

    Ist bei mir absolut nicht zu finden..


    Unfähig ? :D


    Drücke mal in deinem Script:


    Code
    STRG + F
    |
    dann gibst du da: n Fillup
    ein
    |
    und dann poste mal bitte was du da findest  :whistling:


    mfg. :thumbup:

    Da hast du Recht 8| Ja, so muss es tatsächlich sein.


    Also: In der IF-Abfrage "playerid" durch "i" ersetzen!


    //Kaliber:
    Aber es wird ja gefragt ob "i" in der Fraktion Medic ist, oder nicht? Dann geht das doch?


    Quatsch !


    Ich habe recht :whistling: Verwende meinen Code und lass dir jetzt nichts einreden @SunRise !


    mfg. :thumbup:


    //Edit SA:MP


    Du darfst das doch nicht unter OnGameModeInit schreiben :pinch:


    Schreibe das in keinen Callback einfach ganz unten hin den "public" ;)

    Achja, ihr benutzt ja alle GF :pinch:


    Die haben da so ein Makro drinnen richtig gay !


    Okay, es muss dann glaube ich so heißen:


    function Fillup()


    mfg. :pinch:

    Muss es nicht so heißen ?


    if(PlayerInfo[i][pMember] == /* Fraktion */ || PlayerInfo[i][pLeader] == /*Fraktion*/)
    {
    SendClientMessage(i, FARBE, str);
    }


    Nein, da ja dem Spieler (der der Medic ist = playerid) eine Nachricht gesendet werden soll und nicht dem, der kaum noch Leben hat ;)


    mfg. :thumbup:

    Schreibe es so:


    SetTimerEx("Health", 1000, 1, "i", playerid);


    //Irgendwo außerhalb eines Callbacks:
    forward Health(playerid);


    //Irgendwo darunter:
    public Health(playerid)
    {
    for(new i; i < MAX_PLAYERS; i++)
    {
    new Float:health[MAX_PLAYERS];
    health = GetPlayerHealth(i);
    if(health[i] < 10)
    {
    new name[MAX_PLAYER_NAME], str[256];
    GetPlayerName(i, name, sizeof(name));
    format(str, sizeof(str), "%s hat unter 10 Health, kümmere Dich um ihn!", name);
    if(PlayerInfo[playerid][pMember] == /* Fraktion */ || PlayerInfo[playerid][pLeader] == /*Fraktion*/)
    {
    SendClientMessage(playerid, FARBE, str);
    }
    }
    }
    return 1;
    }


    mfg. :thumbup:

    So muss das geschrieben werden:


    SetPlayerAttachedObject(playerid,0,19347,16,0.115999,-0.205000,0.447000,93.899971,3.700009,135.900161,1.410998,1.212999,4.876999,0xFF00FF00);


    mfg. :thumbup:

    Das muss nicht bei OnGameModeInit rein sondern unter OnVehicleSpawn oder OnVehicleStreamIn, dass muss dann aber auch so aussehen:


    new engine,lights,alarm,doors,bonnet,boot,objetive;
    GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
    SetVehicleParamsEx(vehicleid, false, lights, alarm, doors, bonnet, boot, objective);


    mfg. :thumbup:

    Zitat

    SetTimerEx("Health", 1000, true);


    Das ist falsch, muss so lauten:


    SetTimerEx("Health", 1000, 1, "i", playerid);


    Du musst die ganzen Funktionen auch noch ergänzen und in den richtigen Callback schreiben ;)


    mfg. :thumbup:

    Oben in dein Script:


    #include <sscanf>


    und dann unter deine Includes:


    stock PlayerName(playerid)
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof name);
    return name;
    }


    mfg. :thumbup:

    Schreib den Command mal so und der darf in keinem Callback (public) stehen !


    ocmd:wiederleben(playerid,params[])
    {
    new Float:posx, Float:posy, Float:posz;
    new pID,string[50];
    GetPlayerPos(playerid, posx, posy, posz);
    if(IsPlayerConnected(playerid))
    {
    if(isPlayerInFrakt(playerid,6))
    {
    if(sscanf(params,"i",pID))return SendClientMessage(playerid,COLOR_BLAU,"Benutze: /wiederbeleben [Spielername/ID]");
    {
    if(GetPVarInt(pID, "Todtime") < 0)return SendClientMessage(playerid,COLOR_GRAU,"Der Spieler ist nicht Tot!");
    if(GetPVarInt(pID, "Todtime") >= 1)
    {
    SetPlayerPos(pID,posx+3,posy,posz);
    format(string,sizeof(string),"Du hast %s erfolgreich wiederbelebt!",SpielerName(pID));
    SendClientMessage(playerid,COLOR_GRÜN1,string);
    }
    }
    }
    }
    return 1;
    }


    mfg. :thumbup: