Skocz do zawartości
fabko

[CS:GO] Losowe menu na początku rundy

Rekomendowane odpowiedzi

2 minuty temu, MAGNET napisał:

co to za losy? ;>

Taki mały systemik kluczy i skrzynek na serwerze

KYUtWNc.png

 

A tutaj po losowaniu:

kHpspQi.png

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Zastanawiam się tylko nad tym faktem, że widziałem ten plugin wcześniej na podobnej stronie o tej tematyce a nagle pojawia się tutaj.

Spoiler

#include <sourcemod>
#include <cstrike>
#include <sdktools>
#include <sdkhooks>

public Plugin myinfo = 
{
    name = "Losowe menu gracza",
    author = "sourZ",
    description = "",
    version = "1.0",
    url = "koderZ.pl"
}

float freezeTime;

public void OnPluginStart()
{
    HookEvent("player_spawn", Event_PlayerSpawn);
}

public Action Event_PlayerSpawn(Handle event, const char[] name, bool dontBroadcast)
{
    int userid = GetEventInt(event, "userid");
    int client = GetClientOfUserId(userid);

    Handle mp_freezetime = FindConVar("mp_freezetime");
     if (mp_freezetime != null) 
     { 
         freezeTime = GetConVarFloat(mp_freezetime); 
     }

     float sekundy = 1.0 + freezeTime;

     if((GetRandomInt(1, 3) == 1) && GetClientTeam(client) > 1)
     {
         PrintToChat(client, "★ \x07[Bonus] \x05Bonusowe menu pokaże się za kilka chwil!")
         CreateTimer(sekundy, WyswietlMenu, client);
     }
}

public Action WyswietlMenu(Handle timer, any client)
{
    if(IsValidClient(client))
    {
        MenuGracza(client, 0);
    }
}

public Action MenuGracza(int client, int args)
{
    Menu menu = new Menu(MenuH);
    menu.SetTitle("");
    menu.AddItem("1", "Dodatkowe 500 dolarów");
    menu.AddItem("2", "Dodatkowe 15 punktow zycia");
    menu.AddItem("3", "Dodatkowe 5%% szybkosci");
    if(IsPlayerVip(client))
    {
        menu.AddItem("4", "[VIP] Wybierz broń");
    }
    menu.ExitButton = false;
    menu.Display(client, 10);
}

public Action Bronie(int client)
{
    Menu menu = new Menu(BronieH);
    menu.SetTitle("Wybierz broń:");
    menu.AddItem("1", "AK-47");
    menu.AddItem("2", "M4A1");
    menu.AddItem("3", "M4A1-S");
    menu.ExitButton = false;
    menu.Display(client, 10);
}

public int MenuH(Menu menu, MenuAction action, int client, int pos)
{
    switch(action)
    {
        case MenuAction_Select:
        {
            char arg[2];
            menu.GetItem(pos, arg, sizeof(arg));
            int numArg = StringToInt(arg);
            switch(numArg)
            {
                case 1:
                {
                    int hajs = GetEntProp(client, Prop_Send, "m_iAccount");
                    SetEntProp(client, Prop_Send, "m_iAccount", hajs+500);
                }
                case 2:
                {
                    SetEntityHealth(client, GetClientHealth(client)+15);
                }
                case 3:
                {
                    SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", 1.05);
                }
                case 4:
                {
                    Bronie(client);
                }
            }
        }
    }
}

public int BronieH(Menu menu, MenuAction action, int client, int pos)
{
    switch(action)
    {
        case MenuAction_Select:
        {
            char arg[2];
            menu.GetItem(pos, arg, sizeof(arg));
            int numArg = StringToInt(arg);
            switch(numArg)
            {
                case 1:
                {
                    GivePlayerItem(client, "weapon_ak47");
                }
                case 2:
                {
                    GivePlayerItem(client, "weapon_m4a1");
                }
                case 3:
                {
                    GivePlayerItem(client, "weapon_m4a1_silencer");
                }
            }
        }
    }
}

stock bool IsValidClient(int client)
{
    if(client >= 1 && client <= MaxClients && IsClientInGame(client) && !IsFakeClient(client) && !IsClientSourceTV(client))
        return true;
    return false;
}

stock bool IsPlayerVip(int client)
{
    if(GetUserFlagBits(client) & ADMFLAG_CUSTOM1)
        return true;
    return false;
}

 

 

Jestem ciekaw kto od kogo zrzyna 1:1 i podaje się za autora ;) Zrozumiałbym jeszcze jakby kod był trochę inny ale aż w taki sposób?

Edytowane przez int

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
11 minut temu, int napisał:

Zastanawiam się tylko nad tym faktem, że widziałem ten plugin wcześniej na podobnej stronie o tej tematyce a nagle pojawia się tutaj.

 
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami! Odkryj ukrytą treść

#include <sourcemod>
#include <cstrike>
#include <sdktools>
#include <sdkhooks>

public Plugin myinfo = 
{
    name = "Losowe menu gracza",
    author = "sourZ",
    description = "",
    version = "1.0",
    url = "koderZ.pl"
}

float freezeTime;

public void OnPluginStart()
{
    HookEvent("player_spawn", Event_PlayerSpawn);
}

public Action Event_PlayerSpawn(Handle event, const char[] name, bool dontBroadcast)
{
    int userid = GetEventInt(event, "userid");
    int client = GetClientOfUserId(userid);

    Handle mp_freezetime = FindConVar("mp_freezetime");
     if (mp_freezetime != null) 
     { 
         freezeTime = GetConVarFloat(mp_freezetime); 
     }

     float sekundy = 1.0 + freezeTime;

     if((GetRandomInt(1, 3) == 1) && GetClientTeam(client) > 1)
     {
         PrintToChat(client, "★ \x07[Bonus] \x05Bonusowe menu pokaże się za kilka chwil!")
         CreateTimer(sekundy, WyswietlMenu, client);
     }
}

public Action WyswietlMenu(Handle timer, any client)
{
    if(IsValidClient(client))
    {
        MenuGracza(client, 0);
    }
}

public Action MenuGracza(int client, int args)
{
    Menu menu = new Menu(MenuH);
    menu.SetTitle("");
    menu.AddItem("1", "Dodatkowe 500 dolarów");
    menu.AddItem("2", "Dodatkowe 15 punktow zycia");
    menu.AddItem("3", "Dodatkowe 5%% szybkosci");
    if(IsPlayerVip(client))
    {
        menu.AddItem("4", "[VIP] Wybierz broń");
    }
    menu.ExitButton = false;
    menu.Display(client, 10);
}

public Action Bronie(int client)
{
    Menu menu = new Menu(BronieH);
    menu.SetTitle("Wybierz broń:");
    menu.AddItem("1", "AK-47");
    menu.AddItem("2", "M4A1");
    menu.AddItem("3", "M4A1-S");
    menu.ExitButton = false;
    menu.Display(client, 10);
}

public int MenuH(Menu menu, MenuAction action, int client, int pos)
{
    switch(action)
    {
        case MenuAction_Select:
        {
            char arg[2];
            menu.GetItem(pos, arg, sizeof(arg));
            int numArg = StringToInt(arg);
            switch(numArg)
            {
                case 1:
                {
                    int hajs = GetEntProp(client, Prop_Send, "m_iAccount");
                    SetEntProp(client, Prop_Send, "m_iAccount", hajs+500);
                }
                case 2:
                {
                    SetEntityHealth(client, GetClientHealth(client)+15);
                }
                case 3:
                {
                    SetEntPropFloat(client, Prop_Send, "m_flLaggedMovementValue", 1.05);
                }
                case 4:
                {
                    Bronie(client);
                }
            }
        }
    }
}

public int BronieH(Menu menu, MenuAction action, int client, int pos)
{
    switch(action)
    {
        case MenuAction_Select:
        {
            char arg[2];
            menu.GetItem(pos, arg, sizeof(arg));
            int numArg = StringToInt(arg);
            switch(numArg)
            {
                case 1:
                {
                    GivePlayerItem(client, "weapon_ak47");
                }
                case 2:
                {
                    GivePlayerItem(client, "weapon_m4a1");
                }
                case 3:
                {
                    GivePlayerItem(client, "weapon_m4a1_silencer");
                }
            }
        }
    }
}

stock bool IsValidClient(int client)
{
    if(client >= 1 && client <= MaxClients && IsClientInGame(client) && !IsFakeClient(client) && !IsClientSourceTV(client))
        return true;
    return false;
}

stock bool IsPlayerVip(int client)
{
    if(GetUserFlagBits(client) & ADMFLAG_CUSTOM1)
        return true;
    return false;
}

 

 

Jestem ciekaw kto od kogo zrzyna 1:1 i podaje się za autora ? Zrozumiałbym jeszcze jakby kod był trochę inny ale aż w taki sposób?

To mój plugin, koderzów już nie ma, dlatego udostępniam go tutaj. 

http://prntscr.com/ksgjok
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

To, że nie ma to ja wiem, ale chodzi mi kto jest autorem. Skoro Ty go napisałeś, to dlaczego autorem tam był kto inny a tutaj kto inny?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
11 godzin temu, plx211 napisał:

@fabko skrzynki i klucze w gui to screen overlay czy cos innego?

overlay?

19 godzin temu, int napisał:

To, że nie ma to ja wiem, ale chodzi mi kto jest autorem. Skoro Ty go napisałeś, to dlaczego autorem tam był kto inny a tutaj kto inny?

To może taki dowód będzie dobry

http://prntscr.com/ksti96
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

Edytowane przez fabko

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

@fabko No ok, mogłeś tak od razu.  Wszędzie się podajesz jak "fabko" więc trochę było dziwne, że nagle inaczej ;)

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Dnia 3.09.2018 o 15:55, fabko napisał:

Taki mały systemik kluczy i skrzynek na serwerze

KYUtWNc.png

 

A tutaj po losowaniu:

kHpspQi.png

Czy to jest zawarte w pluginie z 1 posta?

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić obrazków. Dodaj lub załącz obrazki z adresu URL.


×
×
  • Dodaj nową pozycję...