Beiträge von GeForce8800GTX

    wenn du die API nutzt dann nimm die Funktion


    IsChatOpen
    oder
    IsDialogOpen


    Wenn du sie aber nicht benutzt dann mach mal im Script:


    #UseHook


    t::
    Suspend On
    SendInput t
    Hotkey, Enter, On
    Hotkey, Escape, On
    Hotkey, t, Off
    return


    NumpadEnter::
    Enter::
    Suspend Permit
    Suspend Off
    Hotkey, t, On
    Hotkey, Enter, Off
    Hotkey, Escape, Off
    return


    Escape::
    Suspend Permit
    Suspend Off
    SendInput {Escape}
    Hotkey, t, On
    Hotkey, Enter, Off
    Hotkey, Escape, Off
    return

    Sorry das ich den Thread aus den ewigen Träumen erwecke aber


    es währe einfacher mit einem Timer der eine Funktion aufruft und dort der Chat überprüft wird und wenn eine standard text erscheint und man vorher
    den anrufbeantworter aktiviert *hust* Variable das dann automatisch dies passiert.
    wenn man dies mit der API in verbindung bring und dann SendChat nutzt kann dies auch im laufen passieren heißt soviel das der Spieler nicht kurz stehen bleibt :)


    mfg
    GeForce

    Apfel ein Timer ist eine blöde lösung!
    da ist ein
    Loop schlauer


    Anzahl mit der Zahl der durchläufe ändern
    und ID mit der ID


    1::
    loop ANZAHL
    {
    SendInput t/find ID{enter}
    Sleep 120000
    }
    return


    /edit kleiner fehler

    ElDiabolo:
    1) %VariablenName% ist dafür da um sie z.B abzusenden
    SendInput t/Text %VariablenName%{enter}


    Du hast sicherlich bei der Wahl des Names einen nicht erlaubten Character gewählt z.B ä/ü/ö
    poste mal am besten was du so produziert hast dann kann ich besser helfen.
    aber was maddin geschrieben hat ist schon richtig und müsste eig. funktionieren


    mfg
    GeForce

    @olli962:
    Damit auch SendChat funktioniert, musst du folgendes im Script einfügen:


    SendChat_func := DllCall("GetProcAddress", UInt, hModule, Str, "API_SendChat")
    SendChat(Text)
    {
    global SendChat_func
    Result := DllCall(SendChat_func, Str, Text)
    return Result
    }


    Danach wirds funktionieren.


    Mit freundlichem Gruß
    GeForce

    Scorpion1990: Aber natürlich kannst du dies machen z.B "Ladebalken" wenn das Script startet :D


    kleines Beispiel:


    Progress, Off
    Progress, b2 CBNavy CTBlack CWGray, Keybinder startet,, , , Arial


    Progress, 15
    dazwischen kommt dann was .... mit der zahl hinter sagste bei wie viel % es in dem mom. dann sein soll.


    Progress, 50
    usw


    @alle anderen
    Lernt am besten erst die funktionen die Autohotkey von sich aus bietet anstatt direkt mit der SAMP-API durchzustarte auch wenns dadurch viel leichter fällt für GTA ein Keybinder zu erstellen


    mfg
    GeForce

    Sehr geehrte Community.


    Ich melde mich heute bei euch mit einm großen problem.
    und zwar wollen meine ingame erstellten häuser einfach nicht speichern.



    Das Public(die Funktion) wo alles gespeichert wird:


    public SaveProperty(h)
    {
    new query[1024];
    format(query,sizeof(query),"UPDATE `houses` SET `hcreated` = '%i' ,`hentrancex` = '%f' ,`hentrancey` = '%f' ,`hentrancez` = '%f' ,`hexitx` = '%f', `hexity` = '%f', `hexitz` = '%f', `hhealthx` = '%i' WHERE `houseid`='%i'",
    HouseInfo[h][hCreated],HouseInfo[h][hEntrancex],HouseInfo[h][hEntrancey],HouseInfo[h][hEntrancez],HouseInfo[h][hExitx],HouseInfo[h][hExity],HouseInfo[h][hExitz],HouseInfo[h][hHealthx], h);
    mysql_query(query);


    format(query,sizeof(query),"UPDATE `houses` SET `hhealthy` = '%i',`hhealthz` = '%i', `harmourx` = '%i', `harmoury` = '%i', `harmourz` = '%i', `howner` = '%s',`hdiscription` = '%s', `hvalue` = '%i',`hhel` = '%i' WHERE `houseid`='%i'",
    HouseInfo[h][hHealthy],HouseInfo[h][hHealthz],HouseInfo[h][hArmourx],HouseInfo[h][hArmoury],HouseInfo[h][hArmourz], HouseInfo[h][hOwner], HouseInfo[h][hDiscription],HouseInfo[h][hValue],HouseInfo[h][hHel], h);
    mysql_query(query);


    format(query,sizeof(query),"UPDATE `houses` SET `harm` = '%i',`hint` = '%i',`hlock` = '%i',`howned` = '%i',`hrooms` = '%i',`hrent` = '%i',`hrentabil` = '%i',`htakings` = '%i',`hdate` = '%i',`hlevel` = '%i',`hmuell` = '%i' WHERE `houseid`='%i'",
    HouseInfo[h][hArm],HouseInfo[h][hInt],HouseInfo[h][hLock],HouseInfo[h][hOwned],HouseInfo[h][hRooms],HouseInfo[h][hRent],HouseInfo[h][hRentabil],HouseInfo[h][hTakings],HouseInfo[h][hDate],HouseInfo[h][hLevel],HouseInfo[h][hMuell], h);
    mysql_query(query);
    return 1;
    }


    Der Befehl zum House erstellen:


    if(strcmp(cmd, "/hauserstellen", true) == 0)
    {
    new Float:getx,Float:gety,Float:getz, str1[128];
    GetPlayerPos(playerid,getx,gety,getz);
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))return SendClientMessage(playerid, COLOR_RED, "FEHLER: /addhouse [HausID]");
    new x_job = strval(tmp);
    if(HouseInfo[x_job][hCreated] == 1)return SendClientMessage(playerid,COLOR_RED,"[SERVER]: HausID bereits erstellt.");
    else {
    HouseInfo[x_job][hCreated] = 1;
    HouseInfo[x_job][hEntrancex] = getx; HouseInfo[x_job][hEntrancey] = gety; HouseInfo[x_job][hEntrancez] = getz;
    HouseInfo[x_job][hExitx] = 244.5000;
    HouseInfo[x_job][hExity] = 305.0000;
    HouseInfo[x_job][hExitz] = 999.1484;
    HouseInfo[x_job][hValue] = 20000;
    HouseInfo[x_job][hLock] = 1;
    HouseInfo[x_job][hInt] = 1;
    HouseInfo[x_job][hArm] = 1;
    HouseInfo[x_job][hHel] = 1;
    HouseInfo[x_job][hRent] = 50;
    HouseInfo[x_job][hRentabil] = 0;
    HouseInfo[x_job][hLevel] = 3;
    HouseInfo[x_job][hMuell] = 0;
    HouseInfo[x_job][hPickup] = AddStaticPickup(1273, 1, HouseInfo[x_job][hEntrancex], HouseInfo[x_job][hEntrancey], HouseInfo[x_job][hEntrancez]);
    strmid(HouseInfo[x_job][hOwner], "Zu Verkaufen", 0, strlen("Zu Verkaufen"), 255);
    format(str1, sizeof(str1), "==== [HausID: %d] ====\nBesitzer: %s\nPreis: %d$\nMiete: %d$\nMüll: %d",x_job,HouseInfo[x_job][hOwner],HouseInfo[x_job][hValue],HouseInfo[x_job][hRent],HouseInfo[x_job][hMuell]);
    HouseInfo[x_job][h_text] = Create3DTextLabel(str1,COLOR_YELLOW,HouseInfo[x_job][hEntrancex], HouseInfo[x_job][hEntrancey], HouseInfo[x_job][hEntrancez],18.0,0,0);
    SaveProperty(x_job);
    SendClientMessage(playerid,COLOR_RED,"[SERVER]: Haus erstellt.");
    }
    return 1;
    }


    Ich benötige KEINE ganze Lösung sondern einen kleinen Tipp was ich falsch mache.
    die Tabelle ist natürlich angelegt!


    mit freundlichstem Gruß
    GeForce