OnPlayerKeyStateChange

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
  • Hallo leute ich hab ein kleines Problem ich bekomme nen error


    error 025: function heading differs from prototype



    was es ist weiß ich ja auch es liegt an der procedure


    Bei mir heißt sie so


    public OnPlayerKeyStateChange(playerid, newstate, newkeys, oldkeys)


    ich habe da das newstate eingefügt weil ich es für mein motor system brauchte (aus andres script)
    nur kommt jetzt der error das es so nicht gehen will im anderen script giebts kein newkeys und oldkeys


    nur hier wird das auch benötigt wegen haus oder so ^^



    if(newkeys == 16 || newkeys == 16)


    was muss ich machen damit es funktioniert?



    weiß das wer thx shconma :D

    Entspurt!!!
    Ihr dürft euch noch für die Closed Beta eintragen!!!
    Es wird der Hamma, einige User freuen sich bereits!!!


    http://www.another-day.de

  • if(newkeys == 16 || newkeys == 16)
    Das macht für mich i-wie wenig sinn. Du fragst ab ob newkeys 16 oder 16 ist.
    Ka ob das was mit deinem Fehler da zu tun hat, aber
    if(newkeys == 16)
    reicht vollkommen.


    Mfg.


    PS: Poste mal ein bisschen mehr von dem Code dann kann man dir sicherlich besser Helfen.

    The fact is, I am right. And if you think I'm wrong, you are wrong.

  • Leider hats nciht geholfen weiß net an was das lag wesshalb 16 16 is weiß net mal für was das newskey steht xD



    public OnPlayerKeyStateChange(playerid, newstate, newkeys, oldkeys)
    {
    // new string[128];
    new pveh = GetVehicleModel(GetPlayerVehicleID(playerid));
    new vehicle = GetPlayerVehicleID(playerid);
    if(newstate == PLAYER_STATE_DRIVER && (pveh != 509 && pveh != 481 && pveh != 510) && IsPlayerInAnyVehicle(playerid))
    {
    SetTimerEx("Startup", 1, false, "ii", playerid, vehicle);
    SetTimerEx("engine2", 2500, false, "ii", playerid);
    }
    else if(newstate == PLAYER_STATE_DRIVER && (pveh != 509 && pveh != 481 && pveh != 510) && IsPlayerInAnyVehicle(playerid))
    {
    SetTimerEx("Startup", 1, false, "ii", playerid, vehicle);
    SetTimerEx("engine2", 2500, false, "ii", playerid);
    }
    if(newkeys == 16)
    {
    new string[128];
    for(new i = 0; i < sizeof(HouseInfo); i++)
    {
    if (IsPlayerInRangeOfPoint(playerid,3.0,HouseInfo[i][hEntrancex], HouseInfo[i][hEntrancey], HouseInfo[i][hEntrancez]))
    {
    //printf("Found House :%d",i);
    if(PlayerInfo[playerid][pPhousekey] == i || HouseInfo[i][hLock] == 0)
    {
    SetPlayerInterior(playerid,HouseInfo[i][hInt]);
    SetPlayerPos(playerid,HouseInfo[i][hExitx],HouseInfo[i][hExity],HouseInfo[i][hExitz]);
    GameTextForPlayer(playerid, "~w~Willkommen zu Hause", 5000, 1);
    PlayerInfo[playerid][pInt] = HouseInfo[i][hInt];
    PlayerInfo[playerid][pLocal] = i;
    SetPlayerVirtualWorld(playerid,i);
    }
    else
    {
    GameTextForPlayer(playerid, "~r~Verschlossen", 5000, 1);
    }
    }
    }


    genug code oder noch mehr? ^^

    Entspurt!!!
    Ihr dürft euch noch für die Closed Beta eintragen!!!
    Es wird der Hamma, einige User freuen sich bereits!!!


    http://www.another-day.de

  • das würde es baer iwie nicht bringen denke ich mal xD


    if(newstate == PLAYER_STATE_DRIVER && (pveh != 509 && pveh != 481 && pveh != 510) && IsPlayerInAnyVehicle(playerid))
    {
    SetTimerEx("Startup", 1, false, "ii", playerid, vehicle);
    SetTimerEx("engine2", 2500, false, "ii", playerid);
    }
    else if(newstate == PLAYER_STATE_DRIVER && (pveh != 509 && pveh != 481 && pveh != 510) && IsPlayerInAnyVehicle(playerid))
    {
    SetTimerEx("Startup", 1, false, "ii", playerid, vehicle);
    SetTimerEx("engine2", 2500, false, "ii", playerid);
    }


    habs ja reingemacht weil ich es brauche

    Entspurt!!!
    Ihr dürft euch noch für die Closed Beta eintragen!!!
    Es wird der Hamma, einige User freuen sich bereits!!!


    http://www.another-day.de

  • Ja lol. Wenn du einfach newstate ins Public schreibst is doch klar das es nicht geht xDD Is mir garnich aufgefallen lol.
    machs einfach so:
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    new newstate = GetPlayerState(playerid);
    //blablabla dein weiterer code

    The fact is, I am right. And if you think I'm wrong, you are wrong.