Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
Nowy Plugin

Broń w nowej rundzie

nowy plugin

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
5 odpowiedzi w tym temacie

#1 heros951

    Nowy

  • Nowy

Reputacja: 0
Nowy

  • Postów:3
  • Imię:Mateusz
  • Lokalizacja:Polska
Offline

Napisano 10.07.2014 09:28

Prosił bym o napisanie w miarę prostego pluginu. Plugin ma po wpisaniu /bron  dać nam ( i tylko nam) na początku następnej rundy bron tz. AK47


  • +
  • -
  • 0

#2 Rynek

    Pomocny

  • Zbanowany

Reputacja: 29
Życzliwy

  • Postów:68
  • Lokalizacja::)
Offline

Napisano 10.07.2014 09:57

Łap

Załączony plik  ak.sma   420 bajtów  20 Ilość pobrań
  ak.amxx



#3 heros951

    Nowy

  • Autor tematu
  • Nowy

Reputacja: 0
Nowy

  • Postów:3
  • Imię:Mateusz
  • Lokalizacja:Polska
Offline

Napisano 10.07.2014 10:06

Chodziło mi o to by na początku następnej rundy dawało, a nie po wpisaniu


  • +
  • -
  • 0

#4 Amaroq

    AMXX Contributor

  • Użytkownik

Reputacja: 304
Wszechpomocny

  • Postów:380
  • GG:
  • Steam:steam
  • Imię:Karol
  • Lokalizacja:Łódź
Offline

Napisano 11.07.2014 18:40

#include <amxmodx>
#include <fun>
 
new g_iGive;
 
#define AddGive(%1) (g_iGive |= (1<<(%1-1)))
#define CheckGive(%1) (g_iGive & (1<<(%1-1)))
#define RemoveGive(%1) (g_iGive &= ~(1<<(%1-1)))
 
new g_iMaxPlayers;
 
public plugin_init()
{
    register_plugin("Give Weapon", "0.0.1", "Ni3znajomy")
    register_clcmd("say /bron", "cmdGiveWeapon");
    register_event("HLTV", "HLTV_event", "a", "1=0", "2=0");
 
    g_iMaxPlayers = get_maxplayers();
}
 
public cmdGiveWeapon(id)
{
    if(CheckGive(id))
        return PLUGIN_HANDLED;
 
    AddGive(id);
    return PLUGIN_HANDLED;
}
 
public client_disconnect(id)
{
    if(CheckGive(id))
        RemoveGive(id);
}
 
public HLTV_event()
{
    for(new i=1;i<=g_iMaxPlayers;i++)
    {
        if(CheckGive(i) && is_user_alive(i))
        {
            give_item(i, "weapon_ak47");
            RemoveGive(i);
        }
    }
}

 


  • +
  • -
  • 2
Plugin informujący o zabiciu zakładnika (wysyła do admina na say nick gracza oraz zapisuje o tym logi) - Hostage Killer v1.3.3
DarkGL to mój autorytet.

#5 heros951

    Nowy

  • Autor tematu
  • Nowy

Reputacja: 0
Nowy

  • Postów:3
  • Imię:Mateusz
  • Lokalizacja:Polska
Offline

Napisano 11.07.2014 20:15

Było by dobrze tylko, że są dwa błędy jak zginę lub jestem nie żywy to w następnej rundzie nie dostaje się broni oraz drugi błąd to taki, że posiada się 1 szt AK47 lecz w rzeczywistości można wyrzucić nieograniczoną ilość broni. Jakbym mógł poprosić przy waszych pluginach o słowo wyjaśnienia przy definicjach bo komendy to samemu uda mi się sprawdzić


  • +
  • -
  • 0

#6 BlackPerfum

    Pseudo interakcja??

  • Power User

Reputacja: 459
Wszechobecny

  • Postów:575
  • Lokalizacja:...
Offline

Napisano 11.07.2014 20:48

jak zginę lub jestem nie żywy to w następnej rundzie nie dostaje się broni

To przez to że event HLTV wykonuje się zbyt szybko tzn. zanim zostaniesz ożywiony on się wykona.
Ni3znajomy zrobił zabezpieczenie aby martwym nie dawało broni:

public HLTV_event(){
     for(new i=1;i<=g_iMaxPlayers;i++)
     {
          if(CheckGive(i) && is_user_alive(i)) //tu mamy zabezpieczenie
          {
               give_item(i, "weapon_ak47");
               RemoveGive(i);
          }
     }
}

Zazwyczaj takie zabezpieczenia są wymagane ale czasem są niepotrzebne a nawet nieodpowiednie :/


drugi błąd to taki, że posiada się 1 szt AK47 lecz w rzeczywistości można wyrzucić nieograniczoną ilość broni

Ciekawe. Być może to też wina wymuszenia zbyt szybkiego dania broni.
 

Jakbym mógł poprosić przy waszych pluginach o słowo wyjaśnienia przy definicjach bo komendy to samemu uda mi się sprawdzić

Najpierw przeczytaj to klik jak juz przeczytasz to krótkie wyjaśnienie na prosty język:
#define AddGive(%1) (g_iGive |= (1<<(%1-1))) //Dodaje bit o indexie %1-1 do zmiennej g_iGive
#define CheckGive(%1) (g_iGive & (1<<(%1-1))) //Sprawdza czy bit o indexie %1-1 "jest" w zmiennej g_iGive
#define RemoveGive(%1) (g_iGive &= ~(1<<(%1-1))) //Usuwa bit o indexie %1-1 ze zmiennej g_iGive
Wybacz Ni3znajomy ale minimalnie edytowałem twój plugin:
Spoiler

  • +
  • -
  • 2
Chcesz napisać do mnie na PW to:
Spoiler

Mój tok myślenia jest błędny? Wskaż mi błąd zmienie to!

Aktualnie bije limit 32 graczy (łącze serwery) ale nadal są lagi przy zbyt dużym przesyłu informacji Dołączona grafika
Gra się płynnie do 40~50 graczy potem łącze pada i zamiast biegać ludzie się teleportują Dołączona grafika





Również z jednym lub większą ilością słów kluczowych: nowy plugin

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych