Engine problem tasten

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
  • //Firstly Credits to Homer as this is just a small edit on top of his
    //Secondly please always leave my credits on this too
    //thirdly enjoy


    #include <a_samp>


    #define SCM SendClientMessage
    #define COLOR_PURPLE 0xC2A2DAAA



    new VehicleStarted[MAX_VEHICLES];
    new sendername[MAX_PLAYER_NAME];
    new BigEar[MAX_PLAYERS];


    forward Starting(playerid);
    forward ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5);


    public OnFilterScriptInit()
    {
    print("-------------------------------------");
    print("-----Engine System By Lee Percox-----");
    print("---Credits to Lee Percox & Homer----");


    new Car;
    for(Car=0;Car<MAX_VEHICLES;Car++)
    return 1;
    return 1;
    }



    public OnFilterScriptExit()
    {
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if(strcmp("/exitcar", cmdtext, true, 10) == 0) // you do not need to use this command as you just hit enter now
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    RemovePlayerFromVehicle(playerid);
    SCM(playerid,0xFFFF00AA,"* You left the vehicle.");
    TogglePlayerControllable(playerid,1);
    }else{
    SCM(playerid,0xFFFF00AA,"* Du bist in kein Auto!");
    }
    }
    return 1;
    }
    return 0;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    new CarID = GetPlayerVehicleID(playerid);
    new CarMod = GetVehicleModel(playerid);


    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(VehicleStarted[CarID] == 0 && CarMod != 510 && CarMod != 509 && CarMod != 481)
    {
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 510 || GetVehicleModel(GetPlayerVehicleID(playerid)) == 509 || GetVehicleModel(GetPlayerVehicleID(playerid)) == 481){
    return 1;
    }
    TogglePlayerControllable(playerid,0);
    SCM(playerid,0x950000FF,"* Drücke TAB um den Motor zu starten");
    }else{
    SCM(playerid,0x80FF80FF,"* Motor ist schon an!");
    }
    }
    return 1;
    }


    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    if((newkeys & (KEY_SECONDARY_ATTACK)) == (KEY_SECONDARY_ATTACK))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    if(IsPlayerConnected(playerid))
    {
    new Vehicle = GetPlayerVehicleID(playerid);
    if(VehicleStarted[Vehicle] == 0)
    {
    RemovePlayerFromVehicle(playerid);
    SCM(playerid,0x0000FFFF,"* Dein motor ist nun wieder aus.");
    TogglePlayerControllable(playerid,1);
    }
    }
    }
    }


    if(newkeys == KEY_ACTION)
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    if(IsPlayerConnected(playerid))
    {
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 510 || GetVehicleModel(GetPlayerVehicleID(playerid)) == 509 || GetVehicleModel(GetPlayerVehicleID(playerid)) == 481){
    return 1;
    }
    new Vehicle = GetPlayerVehicleID(playerid);
    if(VehicleStarted[Vehicle] == 0)
    {
    new string[256];
    SCM(playerid,0x80FF80FF,"* Starte Motor...");
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* %s Versucht den Motor zu starten.", sendername);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    GameTextForPlayer(playerid,"~n~~n~~n~~n~~n~~n~~n~~g~Motor gestartet...",3000,3);
    SetTimerEx("Starting",3500,0,"i",playerid);
    }
    }
    }
    }
    return 1;
    }


    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    TogglePlayerControllable(playerid,1);
    new Vehicle = GetPlayerVehicleID(playerid);
    VehicleStarted[Vehicle] = 0;
    return 1;
    }


    public Starting(playerid)
    {
    new Vehicle = GetPlayerVehicleID(playerid);
    new RandomStart;
    if(IsPlayerConnected(playerid))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    RandomStart = random(10);
    switch(RandomStart)
    {
    case 0,1,2,3,4,5,6,7,8,9:
    {
    new string[256];
    VehicleStarted[Vehicle] = 1;
    TogglePlayerControllable(playerid,1);
    GameTextForPlayer(playerid,"~r~Motor Gestartet", 1000, 1);
    GetPlayerName(playerid, sendername, sizeof(sendername));
    format(string, sizeof(string), "* %s startet den Motor.", sendername);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    }
    case 10:
    {
    new string[256];
    SendClientMessage(playerid,0xFF1C1CFF,"* Motor nicht gestartet!");
    format(string, sizeof(string), "* %s fails to start the Engine.", sendername);
    ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
    }
    }
    }
    }
    return 1;
    }


    public ProxDetector(Float:radi, playerid, string[],col1,col2,col3,col4,col5)
    {
    if(IsPlayerConnected(playerid))
    {
    new Float:posx, Float:posy, Float:posz;
    new Float:oldposx, Float:oldposy, Float:oldposz;
    new Float:tempposx, Float:tempposy, Float:tempposz;
    GetPlayerPos(playerid, oldposx, oldposy, oldposz);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(!BigEar[i])
    {
    GetPlayerPos(i, posx, posy, posz);
    tempposx = (oldposx -posx);
    tempposy = (oldposy -posy);
    tempposz = (oldposz -posz);
    if (((tempposx < radi/16) && (tempposx > -radi/16)) && ((tempposy < radi/16) && (tempposy > -radi/16)) && ((tempposz < radi/16) && (tempposz > -radi/16)))
    {
    SendClientMessage(i, col1, string);
    }
    else if (((tempposx < radi/8) && (tempposx > -radi/8)) && ((tempposy < radi/8) && (tempposy > -radi/8)) && ((tempposz < radi/8) && (tempposz > -radi/8)))
    {
    SendClientMessage(i, col2, string);
    }
    else if (((tempposx < radi/4) && (tempposx > -radi/4)) && ((tempposy < radi/4) && (tempposy > -radi/4)) && ((tempposz < radi/4) && (tempposz > -radi/4)))
    {
    SendClientMessage(i, col3, string);
    }
    else if (((tempposx < radi/2) && (tempposx > -radi/2)) && ((tempposy < radi/2) && (tempposy > -radi/2)) && ((tempposz < radi/2) && (tempposz > -radi/2)))
    {
    SendClientMessage(i, col4, string);
    }
    else if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
    {
    SendClientMessage(i, col5, string);
    }
    }
    else
    {
    SendClientMessage(i, col1, string);
    }
    }
    }
    }
    return 1;
    }


    strtok(const string[], &index, const seperator[] = " ")
    {
    new index2, result[30];
    index2 = strfind(string, seperator, false, index);


    if(index2 == -1)
    {
    if(strlen(string) > index)
    {
    strmid(result, string, index, strlen(string), 30);
    index = strlen(string);
    }
    return result;
    }
    if(index2 > (index + 29))
    {
    index2 = index + 29;
    strmid(result, string, index, index2, 30);
    index = index2;
    return result;
    }
    strmid(result, string, index, index2, 30);
    index = index2 + 1;
    return result;
    }
    #pragma unused strtok


    ich möchte das man den motor nicht mit tap öffnen sonder mit shift knn da smir einer machen?


    Gelöscht