[SAMMELTHREAD] Kleine Scripting Fragen

Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
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
  • Wie kann ich diese Animation machen, um z.B. mit der linken Maustaste eine Zigarette zu bekommen und damit rauchen zu können? Oder gibt es andere Animationen, wodurch der Character gerade aus schaut und nicht dorthin, wo man selbst hinschaut?


    Wie kann ich die Zeit auf dem Server einfrieren? Bei mir ist die Zeit auf dem Server immer die Zeit, die auch mein Computer anzeigt.

  • Wie kann ich die Zeit auf dem Server einfrieren? Bei mir ist die Zeit auf dem Server immer die Zeit, die auch mein Computer anzeigt.


    Da wirst du wohl in Gamemode einen Code haben, der gettime nutzt um damit ein TextDraw zu aktualisieren und dir dort die Zeit anzuzeigen.
    Suche mal danach. Je nach dem wie der Code aufgebaut ist, ist es mehr oder weniger schwer die Zeit (temporär?) einzufrieren.

  • Moin :) ,


    Ich habe arbeite grad an einem Waffenkauf Dialog .... und ich habe das mit den Dialogen fertig etc, bloß wenn ich jetzt auf eine Waffe drücke, passiert nichts! Warum?


    Code:


    if(listitem == 0)//Pistoel - 9mm
    {
    if(GetPlayerMoney(playerid) >= 250)
    {
    GivePlayerWeapon(playerid, 22, 100);
    SendClientMessage(playerid,0xFF0000FF,"[INFO] {FFFFFF} Du hast dir eine 9mm Pistole gekauft!");
    }
    else
    {
    SendClientMessage(playerid,0xFF0000FF,"[FEHLER] {FFFFFF} Du hast nicht genügend Geld!");
    }
    }

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • Also als erstes läuft der Spieler auf einen PickUp zu.


    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if(pickupid == ArmyPickUp)
    {
    ShowPlayerDialog(playerid,WAFFEN_USARMY,DIALOG_STYLE_LIST,"{FFFFFF}US-ARMY - {FF0000}Laden","{FFFFFF}Waffen kaufen\nPremium-System\nGun-Game beitreten","Auswählen","Abbrechen");
    }
    return 1;
    }


    Dann öffnet sich ein Dialog:
    Zuerst der:


    case WAFFEN_TERRORISTEN:
    {
    if(response)
    {
    if(listitem == 0)
    {
    ShowPlayerDialog(playerid,WAFFEN_MENUTERRORISTEN,DIALOG_STYLE_LIST,"{FFFFFF}TERRORISTEN - {FF0000}Waffenladen","{FFFFFF}Pistole(9mm) - $1500\nPistole(Schalldämpfer) - $\nDesert Eagle - $\nSchrotflinte - $\nAbgesägte Schrotflinte - $\nDoppelte Schrotflinte - $\nMicro SMG/Uzi - $\nMP5 - $\nAK-47 - $\nM4 - $\nTec-9 - $\nCountry Gewehr - $\nScharfschützengewehr - $\nRPG- $\nFlammenwerfer - $","Kaufen","Zurück");
    }
    else if(listitem == 1)
    {
    SendClientMessage(playerid,0xFF0000FF,"[FEHLER]{FFFFFF} Derzeitig deaktiviert!");
    }
    else if(listitem == 2)
    {
    SendClientMessage(playerid,0xFF0000FF,"[FEHLER]{FFFFFF} Derzeitig deaktiviert!");
    }
    }
    else
    {
    }
    }


    //und dann wenn der Spieler z.b.: Waffe 1 Anklickt , soll diese Funktion ausgerufen werden:



    case WAFFEN_MENUTERRORISTEN:
    {
    if(response)
    {
    if(listitem == 0)//Pistoel - 9mm
    {
    if(GetPlayerMoney(playerid) >= 250)
    {
    ShowPlayerDialog(playerid,WAFFEN_MENUTERRORISTEN,DIALOG_STYLE_LIST,"{FFFFFF}TERRORISTEN - {FF0000}Waffenladen","{FFFFFF}Pistole(9mm) - $1500\nPistole(Schalldämpfer) - $\nDesert Eagle - $\nSchrotflinte - $\nAbgesägte Schrotflinte - $\nDoppelte Schrotflinte - $\nMicro SMG/Uzi - $\nMP5 - $\nAK-47 - $\nM4 - $\nTec-9 - $\nCountry Gewehr - $\nScharfschützengewehr - $\nRPG- $\nFlammenwerfer - $","Kaufen","Zurück");
    GivePlayerWeapon(playerid, 22, 100);
    SendClientMessage(playerid,0xFF0000FF,"[INFO] {FFFFFF} Du hast dir eine 9mm Pistole gekauft!");
    }
    else
    {
    ShowPlayerDialog(playerid,WAFFEN_MENUTERRORISTEN,DIALOG_STYLE_LIST,"{FFFFFF}TERRORISTEN - {FF0000}Waffenladen","{FFFFFF}Pistole(9mm) - $1500\nPistole(Schalldämpfer) - $\nDesert Eagle - $\nSchrotflinte - $\nAbgesägte Schrotflinte - $\nDoppelte Schrotflinte - $\nMicro SMG/Uzi - $\nMP5 - $\nAK-47 - $\nM4 - $\nTec-9 - $\nCountry Gewehr - $\nScharfschützengewehr - $\nRPG- $\nFlammenwerfer - $","Kaufen","Zurück");
    SendClientMessage(playerid,0xFF0000FF,"[FEHLER] {FFFFFF} Du hast nicht genügend Geld!");
    }
    }



    }
    else
    {
    ShowPlayerDialog(playerid,WAFFEN_TERRORISTEN,DIALOG_STYLE_LIST,"{FFFFFF}TERRORISTEN - {FF0000}Laden","{FFFFFF}Waffen kaufen\nPremium-System\nGun-Game beitreten","Auswählen","Abbrechen");
    }
    }


    Habe es jetzt abgekürzt, habe eigentlich da noch über 14 Waffen stehen .

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • *Facepalm* ... danke dir :)


    //EDIT: Noch eine Frage: Warum wird das Geld dann nicht in der DatenBank gespeichert? Z.b.: Ein Spieler kauf eine Mp5, wird auch von der Geldanzeige weggezogen, dann aber bleibt trozdem in der Datenbank das vorherige Geld. Deswegen wird das Geld , wenn man stirbt , auch von letztes mal hingesetzt. Habe auch alles normalerweise abgespeichert mit "saveplayer(playerid);"... Hier nochmal die Listitem:



    if(listitem == 0)//Pistoel - 9mm
    {
    if(GetPlayerMoney(playerid) >= 250)
    {
    ShowPlayerDialog(playerid,WAFFEN_MENUTERRORISTEN,DIALOG_STYLE_LIST,"{FFFFFF}TERRORISTEN - {FF0000}Waffenladen","{FFFFFF}Pistole(9mm) - $250\nPistole(Schalldämpfer) - $250\nDesert Eagle - $1000\nSchrotflinte - $1500\nAbgesägte Schrotflinte - $4000\nDoppelte Schrotflinte - $3500\nMicro SMG/Uzi - $3500\nMP5 - $2000\nAK-47 - $5000\nM4 - $6000\nTec-9 - $3550\nCountry Gewehr - $3000\nScharfschützengewehr - $5000\nRPG- $10000\nFlammenwerfer - $7500","Kaufen","Zurück");
    GivePlayerWeapon(playerid, 22, 100);
    GivePlayerMoney(playerid, -250);
    SavePlayer(playerid);
    SendClientMessage(playerid,0xFF0000FF,"[INFO] {FFFFFF}Du hast dir eine {FF9100}9mm Pistole {FFFFFF}gekauft!");
    }
    else
    {
    ShowPlayerDialog(playerid,WAFFEN_MENUTERRORISTEN,DIALOG_STYLE_LIST,"{FFFFFF}TERRORISTEN - {FF0000}Waffenladen","{FFFFFF}Pistole(9mm) - $250\nPistole(Schalldämpfer) - $250\nDesert Eagle - $1000\nSchrotflinte - $1500\nAbgesägte Schrotflinte - $4000\nDoppelte Schrotflinte - $3500\nMicro SMG/Uzi - $3500\nMP5 - $2000\nAK-47 - $5000\nM4 - $6000\nTec-9 - $3550\nCountry Gewehr - $3000\nScharfschützengewehr - $5000\nRPG- $10000\nFlammenwerfer - $7500","Kaufen","Zurück");
    SendClientMessage(playerid,0xFF0000FF,"[FEHLER] {FFFFFF}Du hast nicht genügend Geld!");
    }
    }

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

    Einmal editiert, zuletzt von [GeD]Max ()

  • Hier bitte:



    stock SavePlayer(playerid)
    {
    if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid)) //wir überprüfen ob der Spieler überhaupt noch Connected ist und ob er nicht ein NPC ist.
    {
    if(GetPVarInt(playerid,"Eingeloggt") == 1) //Und hier ob er noch eingeloggt ist.
    {
    mysql_SetInt("user", "Score", SpielerInfo[playerid][pScore], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("user", "Alevel", SpielerInfo[playerid][pAlevel], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("user", "Member", SpielerInfo[playerid][pMember], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("user", "Leader", SpielerInfo[playerid][pLeader], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("user", "Geld", SpielerInfo[playerid][pGeld], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("user", "Kills", SpielerInfo[playerid][pKills], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("user", "Tode", SpielerInfo[playerid][pTode], "Name", SpielerInfo[playerid][pName]);
    mysql_SetInt("user", "Banned", SpielerInfo[playerid][pBanned], "Name", SpielerInfo[playerid][pName]);
    mysql_SetFloat("user", "Health", SpielerInfo[playerid][pHealth], "Name", SpielerInfo[playerid][pName]);
    }
    }

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • Bei deiner Pistole:
    GivePlayerMoney(playerid, -250);
    zu:
    GivePlayerMoney(playerid, -250);
    SpielerInfo[playerid][pGeld] -= 250;

    Alles klar danke geht nun wieder! :)



    //Edit:


    Ich habe jetzt vor einen MakeGunPickUp zu erstellen. Dies sollte so aussehen: Administrator gibt /Makegunpickup [WAFFENID] [MUNITION] ein. Z.b.: /makegunpickup 31 5000. So , dann soll ein Pickup erstellt werden mit dem PickUp ID als M4. Und wenn jetzt z.b.: /Makegunpickup 24 5000(Deagle, wenn ich mich nicht irre) dann soll ein Deagle PickUp erstellt werden. Wenn dann der Pickup erstellt wurde, kann man dann da hin gehen , und per "ENTER DRÜCKEN" das Objekt aufnehmen. Wie würde sowas aussehn? Bzw, ein Beispiel wäre cool.


    Jeffrey
    @Alleanderen :)

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

    Einmal editiert, zuletzt von [GeD]Max ()

  • Also gut, ich hab es versucht mir etwas anzuschauen , hat mir aber auch etwas geholfen. Jedoch komme ich nicht weiter...



    ocmd:makegunpickup(playerid,params[])
    {
    if(SpielerInfo[playerid][pAlevel] >= 3)
    {
    new waffe,ammo,Float:Px,Float:Py,Float:Pz,VW=GetPlayerVirtualWorld(playerid);
    if(sscanf(params,"ii",waffe,ammo))return SendClientMessage(playerid, 0xFF0000FF,"[FEHLER]{FFFFFF} /MakeGunPickUp [Waffen-ID] [Munition]");
    {
    GetPlayerPos(playerid, Px, Py, Pz);
    CreatePickup(waffe, 18, Px, Py, Pz , VW);
    }
    }
    return 1;
    }

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • Hallöle Community,


    nach langer Inaktivität bastel ich gerade ein wenig am Selfmade rum. Ich lese aus einer Datenbank die VehicleID aus. Diese wird wunderbar ausgegeben. Nun möchte ich die VehicleID über SetPVarInt speichern. Leider bekomme ich folgenden Fehler: error 035: argument type mismatch (argument 3)


    Ich komme leider momentan nicht auf die Lösung. Vielleicht weil es schon spät ist... Kann jemand helfen? Danke!



    if(response){
    new Query[256], Get[128];
    format(Query, sizeof(Query), "SELECT id FROM `vehicles` WHERE `plate` = '%s'", inputtext);
    mysql_query(Query);
    mysql_store_result();
    mysql_fetch_row(Get);
    mysql_free_result();
    if(strlen(Get) != 0){
    new string[128];
    SetPVarInt(playerid, "pKey1", Get); // Hier möchte ich die ausgelesene VehicleID speichern. Sie ist in der "Get" Variable abgelegt.
    format(string, 128, "[Info] Du nimmst Dir den Schlüssel für folgendes Fahrzeug: %s (%s)", inputtext, Get); // Hier wird die VehicleID noch schön ausgegeben...
    SendClientMessage(playerid, COLOR_GREY, string);
    }else{
    SendClientMessage(playerid, COLOR_GREY, "[Info] Der Schlüssel wurde nicht gefunden.");
    }
    }

    Trancebase, Dreamweaver und ab geht die Uzi.

  • Moin, mal ne kurze frage...
    Wie kann ich es machen das wen er gestorben ist für 2Min auf den Friedhof in LS komme mit der "Unsichtbaren Grenze ?!"


    public OnPlayerDeath(playerid, killerid, reason)
    {
    if(IsPlayerConnected(killerid) && killerid != playerid)
    {
    SendClientMessage(killerid,Rot, "Du hast ein Verbrechen begangen! (Mord) Reporter: Anonym");
    PlayerInfo[killerid][Verbrechen] += 1;
    SendClientMessage(playerid,Rot,"Du bist Gestorben! Grund: Unbekannt");
    PlayerInfo[playerid][Tode] += 1;
    GivePlayerMoney(playerid, 100);
    }
    PlayerInfo[playerid][InSkinChange] = false;
    PlayerInfo[playerid][Duty] = false;
    return 1;
    }

    ↓Das ist der Youtube Channel von mir und meinen Kollegen↓



    Sa-Mp Server [Im Aufbau/Beta]
    128.65.216.200:7777

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen