Medic kann nicht mehr heilen

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
  • Guten Tag,


    meine Fraktion " Medic " kann nicht mehr heilen!


    Ich weiss nicht wieso aber ich brauche diese Fraktion wieder


    ich brauche hilfe hier ist es :


    //-----------------------------------[HEAL]-------------------------------------------------------------------------
    if(strcmp(cmd, "/heal", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new location = PlayerInfo[playerid][pLocal];
    if(!strlen(tmp))
    {
    if(location != 255)
    {
    if(location < 255)
    {
    if(HouseInfo[location][hArm] == 1)
    {
    format(string, sizeof(string), "* %s legt die Schutzweste an.", sendername);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    FreezePlayer(playerid);
    GetPlayerPos(playerid, Unspec[playerid][sPx], Unspec[playerid][sPy], Unspec[playerid][sPz]);
    Unspec[playerid][sPint] = PlayerInfo[playerid][pInt];
    Unspec[playerid][sLocal] = PlayerInfo[playerid][pLocal];
    SetPlayerPos(playerid,1527.5,-12.1,1002.0);
    PlayerInfo[playerid][pLocal] = 255;
    SetPlayerInterior(playerid,99);
    Spectate[playerid] = 257;
    }
    else
    {
    format(string, sizeof(string), "Dieser Ort hat keine Upgrades.");
    SendClientMessage(playerid, TEAM_GREEN_COLOR,string);
    }
    if(HouseInfo[location][hHel] == 1)
    {
    new Float:tempheal;
    GetPlayerHealth(playerid,tempheal);
    if ( tempheal < 100.0)
    {
    SetPlayerHealth(playerid,100.0);
    PlayerPlaySound(playerid, 1150, 0.0, 0.0, 0.0);
    format(string, sizeof(string), "Du wurdest wieder zu 100% geheilt.");
    SendClientMessage(playerid, TEAM_GREEN_COLOR,string);
    }
    else
    {
    SendClientMessage(playerid, TEAM_GREEN_COLOR,"Du wurdest wieder zu 100% geheilt.");
    }
    }
    else
    {
    format(string, sizeof(string), "Dieser Ort ist nicht zum Healing Upgrade.");
    SendClientMessage(playerid, TEAM_GREEN_COLOR,string);
    }
    return 1;
    }
    else if(location == 101)//Restaurant
    {
    new Float:tempheal;
    GetPlayerHealth(playerid,tempheal);
    if ( tempheal < 100.0)
    {
    SetPlayerHealth(playerid,100.0);
    PlayerPlaySound(playerid, 1150, 0.0, 0.0, 0.0);
    format(string, sizeof(string), "Du wurdest wieder zu 100% geheilt.");
    SendClientMessage(playerid, TEAM_GREEN_COLOR,string);
    }
    else
    {
    SendClientMessage(playerid, TEAM_GREEN_COLOR,"You are already healed to 100.");
    }
    }
    else if(location == 102 && IsACop(playerid))//Police Armoury
    {
    SetPlayerHealth(playerid,100.0);
    SetPlayerArmour(playerid,100.0);
    format(string, sizeof(string), "* %s legt die Schutzweste an.", sendername);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    FreezePlayer(playerid);
    GetPlayerPos(playerid, Unspec[playerid][sPx], Unspec[playerid][sPy], Unspec[playerid][sPz]);
    Unspec[playerid][sPint] = PlayerInfo[playerid][pInt];
    Unspec[playerid][sLocal] = PlayerInfo[playerid][pLocal];
    SetPlayerPos(playerid,1527.5,-12.1,1002.0);
    PlayerInfo[playerid][pLocal] = 255;
    SetPlayerInterior(playerid,99);
    Spectate[playerid] = 257;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /heal [ID/NAME] [Preis]");
    return 1;
    }
    }
    giveplayerid = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /heal [ID/NAME] [Preis]");
    return 1;
    }
    moneys = strval(tmp);
    if(moneys < 1 || moneys > 1000) { SendClientMessage(playerid, COLOR_GREY, " Behandlungspreis nicht weniger als: 1$ und höher als 3000$ !"); return 1; }
    if (giveplayerid == playerid)
    {
    SendClientMessage(playerid, COLOR_GRAD1, " Du kannst dich leider nicht selber Heilen!");
    return 1;
    }
    if (IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new giveambu = GetPlayerVehicleID(giveplayerid);
    new playambu = GetPlayerVehicleID(playerid);
    if(gTeam[playerid] == TEAM_CYAN || PlayerInfo[playerid][pMember]== 4||PlayerInfo[playerid][pLeader] == 4 )//model
    {
    if (IsAFeuer(playambu) && playambu == giveambu || (IsPlayerInFrac(playerid, 22)))
    {
    new Float:tempheal;
    GetPlayerHealth(giveplayerid,tempheal);
    if(tempheal >= 160)
    {
    SendClientMessage(playerid, TEAM_GREEN_COLOR," Diese Person ist schon Geheilt.");
    return 1;
    }
    format(string, sizeof(string), "~y~Du heilst: ~n~~w~%s~n~~g~$%d", giveplayer,moneys);
    GameTextForPlayer(playerid, string, 5000, 1);
    GivePlayerMoney(playerid,moneys);
    GivePlayerMoney(giveplayerid,-moneys);
    new hp = 0;
    if(PlayerInfo[playerid][pPainPerk] > 0)
    {
    hp = 20 * PlayerInfo[playerid][pPainPerk];
    hp += 100;
    SetPlayerHealth(giveplayerid, hp);
    }
    else
    {
    hp = 100;
    SetPlayerHealth(giveplayerid, 100);
    }
    PlayerPlaySound(playerid, 1150, 0.0, 0.0, 0.0);
    PlayerPlaySound(giveplayerid, 1150, 0.0, 0.0, 0.0);
    format(string, sizeof(string), "Du wurdest für $%d geheilt.",moneys);
    SendClientMessage(giveplayerid, TEAM_GREEN_COLOR,string);
    if(STDPlayer[giveplayerid] > 0)
    {
    STDPlayer[giveplayerid] = 0;
    SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, "* Du bist nun nicht mehr an STD erkrankt. Die Ärzte konnten dich retten! !");
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, " Nicht im Rettungswagen / Rettungshelikopter!");
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, " Du darfst diesen Befehl nicht benutzen !");
    return 1;
    }
    }
    }
    else
    {
    format(string, sizeof(string), " %d ist kein aktiver Spieler.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    }
    }
    return 1;
    }


    Ich hoffe mir kann einer helfen...


    Achja wenn ich /heal 1 2 eingebe kommt da du bist in keinem Rettungswagen/Rettungshelikopter aber


    dort drinn geht es auch nicht


    Mfg


    Hydra

  • Ich habe hier mal einen Einfachen Heal Befehl
    den müsst ihr dann halt nur noch anpassen


    ocmd:heal(playerid,params[])
    {
    new pID,string[128];
    if(sscanf(params,"u",pID))return SendClientMessage(playerid,BLAU,"/heal [playerid]");
    format(string,sizeof(string),"Du healst %s",SpielerName(pID));
    format(string,sizeof(string),"%s healt dich",SpielerName(playerid));
    SendClientMessage(playerid,ROT,string);
    SetPlayerHealth(pID,100);
    return 1;
    }