Waffenkammer mit einem Timer erstellen

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,


    ich habe mir heute mal zeit genommen eine Waffenkammer zu bauen! Wenn man /lspdaufbrechen schreibt, öffnet


    sich ein Dialog und kannst dir eine Waffe auswählen, danach kann man das selbe erst wieder nach 30 Minuten machen!


    Fangen wir mal an!


    Ganz oben im Script für den Timer machen wir:


    forward WaffenkammerTimer();
    new WaffenkammerRauben = 0;


    Danach definen wir oben die Dialogs:


    #define DIALOG_AUSRUESTEN 66
    #define DIALOG_AUSRUESTEN1 500


    Dann unter OnGameModeInit der 3d Text und das Icon:


    CreateDynamicPickup(1239,1,1582.9611,-1653.6948,19.8792); //waffenkammer pickup
    Create3DTextLabel("Tippe /lspdaufbrechen umd \n die LSPD Kammer aufzubrechen!", 0x00FFFFFF, 1582.9611,-1653.6948,19.8792,10.0,0);//waffenkammer 3d Text


    Dan volgt das unter OnPlayerCommandText:


    if (strcmp("/lspdaufbrechen", cmdtext, true) == 0)
    {
    if(WaffenkammerRauben == 1)
    {
    SetTimer("WaffenkammerTimer",1800000,0); // Nach 60 Minuten erst wieder ausrauben
    SendClientMessage(playerid,COLOR_RED,"Du darfst Sie nur alle 30 min ausrauben !");
    return 1;
    }
    if(IsPlayerInRangeOfPoint(playerid,15.0,1582.9611,-1653.6948,19.8792))
    {
    SendClientMessage(playerid,0xAA3333AA,"Du bist nicht an der Waffenkammer!");
    return 1;
    }
    if(PlayerInfo[playerid][pLevel] < 4)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Du kannst die Kammer erst ab Level 4 Aufbrechen!");
    return 1;
    }
    SendClientMessageToAll(0x9600FFFF,"NEWS: Die LSPD Waffenkammer wurde ausgeraubt");
    ShowPlayerDialog(playerid, DIALOG_AUSRUESTEN, DIALOG_STYLE_LIST, "Waffenkammer", "Waffen", "Auswählen", "Abbrechen");
    return 1;
    }


    Unter OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])



    if(dialogid == DIALOG_AUSRUESTEN)
    {
    if(response)
    {
    if(listitem == 0) // WAFFEN
    {
    WaffenkammerRauben = 1;
    ShowPlayerDialog(playerid,DIALOG_AUSRUESTEN1,DIALOG_STYLE_LIST,"Waffenkammer","Ak47 / 300 Schuss\nSniper / 70 Schuss\nMP5 / 600 Schuss\nShotgun / 50 Schuss","Nehmen","Beenden");
    }
    }
    }
    if(dialogid == DIALOG_AUSRUESTEN1)
    {
    if(response)
    {
    if(listitem == 0) // WAFFEN
    {
    {
    GivePlayerWeapon(playerid,30,300);
    GameTextForPlayer(playerid,"~w~Waffe rausgenommen",15000,3);
    }
    }
    if(listitem == 1) // Desert Eagle
    {
    {
    GivePlayerWeapon(playerid,34,70);
    GameTextForPlayer(playerid,"~w~Waffe rausgenommen",15000,3);
    }
    }
    if(listitem == 2) // MP5
    {
    {
    GivePlayerWeapon(playerid,29,600);
    GameTextForPlayer(playerid,"~w~Waffe rausgenommen",15000,3);
    }
    }
    if(listitem == 3) // Shotgun
    {
    {
    GivePlayerWeapon(playerid,25,50);
    GameTextForPlayer(playerid,"~w~Waffe rausgenommen",15000,3);
    }
    }
    }
    }


    Ganz unten im Script irgendwo:


    public WaffenkammerTimer()
    {
    WaffenkammerRauben = 0;
    }


    Viel Spaß damit, bitte noch die Cooridinaten ändern...


    Mfg


    Hydra

  • Ganz nützlich aber auch einfach ^^ ich würde noch dazu machen das man für 60 sek gefreezed ist und in den 60 sek eine anim abläuft also für anfnger ganz gut, hätte bissel besser erklärt wer können was alles bedeutet usw .


    naja ich gebe mal


    7/10


    MFG


    MasterPig

  • 1. Falsche Sektion dafür gibt es ein Tutorial Bereich


    aber ansonsten 5/10 Punkten

  • //Closed
    Es ist weder ein vollständiges Script noch ein Tutorial.

    Kalcor: "... it makes the game look like it's not GTA. This mod is called San Andreas Multiplayer. It's not a custom game engine which you can script..."