Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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

Prośba o odliczanieProsze o proste odliczanie


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

#1 vernon

    Zaawansowany

  • Użytkownik

Reputacja: -9
Mniej niż zer0.

  • Postów:96
  • Lokalizacja:Kraków
Offline

Napisano 18.05.2012 00:13

Witam, mam do was prośbę o odliczanie chodzi mi mniej więcej o takie:

- Wpisuje się w say /odlicz
- Zaczyna sie odliczanie np. 25 sek + cvar
- Napisy na środku Odliczanie 24, 23, 22
- Dodatkowo chce żeby po wpisaniu komendy /odlicz TT + przenosi do funkcji z broniami(wyswietla sie tylko tt)
- Po skończeniu odliczania przenosi do następnej funkcji
- I prosił bym tez jak zrobić limit graczy + cvar

Użytkownik vernon edytował ten post 18.05.2012 00:21

  • +
  • -
  • 0

#2 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 18.05.2012 02:38

0. new czas; register_cvar("cvar",25); sync = CreateHudSyncObj();

1. register_clcmd("say /odlicz", odlicz);
set_task(1.0,"odlicz",5673,_,_,"b")

2. new czas=get_cvar_num("cvar");
3. set_hudmessage(r, g, b, -1, -1, 0, 6.0, 6.0); ShowSyncHudMsg(0, sync, "%d", czas);
4. nie rozumiem
5. if(czas<=0){remove_task(5673); inna_funkcja();}
6. Nie rozumiem, podobnie, jak 4.

#3 GwynBleidD

    Godlike

  • Administrator

Reputacja: 1849
Godlike

  • Postów:3066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 18.05.2012 11:36

Zamiast hud można zawsze wyświetlać poprzez client_print(id, print_center, "%d", czas);

ad 4. chyba chodzi o to, żeby po włączeniu odliczania TT wyświetliło się menu z wyborem broni. W funkcji odlicz dopisujesz (benio zapomniał cudzysłowiu w register_clcmd, ba być register_clcmd("say /odlicz", "odlicz") ;) :
new menu = menu_create("Wybierz broń", "menu_handler");

menu_additem(menu, "AK 47", "weapon_ak47");
menu_additem(menu, "M4A1", "weapon_m4a1");
menu_additem(menu, "Deagle", "weapon_deagle");

menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);

menu_display(id, menu);


I dodajesz handler menu, czyli tą funkcję:
public menu_handler(id, menu, item) {
if(item == MENU_EXIT) {
menu_destroy(menu);
return PLUGIN_HANDLED;
}

new info[20], access;
menu_item_getinfo(menu, item, access, info, 19);
give_item(id, info);
if(equal(item, "weapon_scout")||equal(item, "weapon_g3sg1")||equal(item, "weapon_ak47")) {
give_item(id, "ammo_762nato");
give_item(id, "ammo_762nato");
give_item(id, "ammo_762nato");
} else if(equal(item, "weapon_m4a1")||equal(item, "weapon_aug")||equal(item, "weapon_sg552")||equal(item, "weapon_sg550")||equal(item, "weapon_famas")||equal(item, "weapon_galil")) {
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
give_item(id, "ammo_556nato");
} else if(equal(item, "weapon_xm1014")||equal(item, "weapon_m3")) {
give_item(id, "ammo_buckshot");
give_item(id, "ammo_buckshot");
give_item(id, "ammo_buckshot");
give_item(id, "ammo_buckshot");
} else if(equal(item, "weapon_mac10")||equal(item, "weapon_ump45")||equal(item, "weapon_usp")) {
give_item(id, "ammo_45acp");
give_item(id, "ammo_45acp");
give_item(id, "ammo_45acp");
give_item(id, "ammo_45acp");
give_item(id, "ammo_45acp");
give_item(id, "ammo_45acp");
give_item(id, "ammo_45acp");
give_item(id, "ammo_45acp");
give_item(id, "ammo_45acp");
} else if(equal(item, "weapon_elite")||equal(item, "weapon_glock18")||equal(item, "weapon_mp5navy")||equal(item, "weapon_tmp")) {
give_item(id, "ammo_9mm");
give_item(id, "ammo_9mm");
give_item(id, "ammo_9mm");
give_item(id, "ammo_9mm");
} else if(equal(item, "weapon_fiveseven")||equal(item, "weapon_p90")) {
give_item(id, "ammo_57mm");
give_item(id, "ammo_57mm");
} else if(equal(item, "weapon_awp")) {
give_item(id, "ammo_338magnum");
give_item(id, "ammo_338magnum");
give_item(id, "ammo_338magnum");
} else if(equal(item, "weapon_m249")) {
give_item(id, "ammo_556natobox");
give_item(id, "ammo_556natobox");
give_item(id, "ammo_556natobox");
give_item(id, "ammo_556natobox");
give_item(id, "ammo_556natobox");
give_item(id, "ammo_556natobox");
give_item(id, "ammo_556natobox");
} else if(equal(item, "weapon_p228")) {
give_item(id, "ammo_357sig");
give_item(id, "ammo_357sig");
give_item(id, "ammo_357sig");
give_item(id, "ammo_357sig");
}

menu_destroy(menu);
return PLUGIN_HANDLED;
}


Menu możesz dowolnie rozbudować, wystarczy dodać linijkę z menu_additem(menu, "Nazwa pozycji", "kod_broni"); Kody broni znajdziesz tu (kolumna z weapon_). W handlerze nie musisz edytować nic.

ad 6. Chodzi Ci o to, że komendy można użyć jak minimum ileś graczy?

Użytkownik GwynBleidD edytował ten post 18.05.2012 11:37

  • +
  • -
  • 0
NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark

#4 vernon

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: -9
Mniej niż zer0.

  • Postów:96
  • Lokalizacja:Kraków
Offline

Napisano 18.05.2012 12:07

z 4 t chodzilo mi o to co wyżej podał, a z 6 ze komende /odlicz mozna np. wpisac od 6 graczy, jesli jest 4 graczy to musi byc wiadomość w say "Zeby wpisac ta komende trzeba 6 osób"

Użytkownik vernon edytował ten post 18.05.2012 12:35

  • +
  • -
  • 0

#5 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 18.05.2012 12:11

Zamiast męczyć się z magazynkami, można też użyć przyjaznej funkcji, ale to jak kto woli :)
public recharge(id){
if(!is_user_alive(id))
return;
switch(get_user_weapon(id)){
case CSW_GLOCK18: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_glock18", id),20)
case CSW_USP: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_usp", id),12)
case CSW_P228: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_p228", id),13)
case CSW_DEAGLE: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_deagle", id),7)
case CSW_FIVESEVEN: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_fiveseven", id),20)
case CSW_ELITE: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_elite", id),30)
case CSW_M3: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_m3", id),8)
case CSW_XM1014: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_xm1014", id),7)
case CSW_TMP: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_tmp", id),30)
case CSW_MAC10: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_mac10", id),30)
case CSW_MP5NAVY: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_mp5navy", id),30)
case CSW_UMP45: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_ump45", id),25)
case CSW_P90: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_p90", id),50)
case CSW_FAMAS: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_famas", id),30)
case CSW_GALIL: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_galil", id),35)
case CSW_AK47: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_ak47", id),30)
case CSW_M4A1: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_m4a1", id),30)
case CSW_SCOUT: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_scout", id),10)
case CSW_SG552: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_sg552", id),30)
case CSW_AUG: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_aug", id),30)
case CSW_SG550: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_sg550", id),30)
case CSW_G3SG1: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_g3sg1", id),20)
case CSW_AWP: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_awp", id),10)
case CSW_M249: cs_set_weapon_ammo(find_ent_by_owner(-1, "weapon_m249", id),100)
}
}


#6 vernon

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: -9
Mniej niż zer0.

  • Postów:96
  • Lokalizacja:Kraków
Offline

Napisano 18.05.2012 12:35

A mogl by mi ktoś stworzyć taki plugin? Bo ja z tego co mi napisaliscie nic nie rozumie :) nie wiem co i jak, proszę o napisanie a beda 2 +
  • +
  • -
  • 0

#7 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 18.05.2012 14:11

Znów odnoszę wrażenie, że chcesz, żeby Ci gotowca napisać.
A dział to "Pytania", a nie "Zrób za mnie"

Jeśli skorzystasz z ww. porad, to stworzysz taki plugin bez problemu.
Napisz i jeśli okaże się nie działać, poproś o pomoc.

Uwierz w siebie, a na pewno dasz radę :)

#8 vernon

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: -9
Mniej niż zer0.

  • Postów:96
  • Lokalizacja:Kraków
Offline

Napisano 18.05.2012 19:59

<p><p>No spróbowałem swoich sil i wyskoczyło mi w logach cos takiego:

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team

odlicz.sma(17) : error 035: argument type mismatch (argument 2)
odlicz.sma(64) : warning 217: loose indentation
odlicz.sma(162) : warning 203: symbol is never used: "czas"

1 Error.
Could not locate output file odlicz.amxx (compile failed).


@edit już sobie z UP poradziłem ale mam problem, ponieważ jak wpisuje /odlicz pokazuje sie napis ale nie widac jak sie odlicza 25, 24, 23 itd. ja to zrobic?

dalem tak


set_hudmessage( 0, 191, 255, -1.0, 0.1, 0, 6.0, 7.0 );
show_hudmessage(0, "Rozpocznie sie za %d", czas);

Użytkownik vernon edytował ten post 18.05.2012 20:00

  • +
  • -
  • 0

#9 ogieR8

    Wszechmogący

  • Power User

Reputacja: 203
Profesjonalista

  • Postów:637
  • Imię:Mariusz
  • Lokalizacja:Ruda Śląska
Offline

Napisano 18.05.2012 20:15

Przed :

set_hudmessage( 0, 191, 255, -1.0, 0.1, 0, 6.0, 7.0 );
show_hudmessage(0, "Rozpocznie sie za %d", czas);


Dodaj:

czas--

Użytkownik ogieR- edytował ten post 18.05.2012 20:15

  • +
  • -
  • 0
DiabloEwenement v.2.0 [||||||_____]
 

Irytuje mnie nieczytelny kod, jeśli oczekujesz ode mnie pomocy - zmień to !
CodeGenerators.pl - skopiuj kod do okna po prawej, kliknij 'Ułóż". To wszystko, trudne ?


#10 vernon

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: -9
Mniej niż zer0.

  • Postów:96
  • Lokalizacja:Kraków
Offline

Napisano 18.05.2012 20:19

nadal to samo tylko teraz pisze Rozpocznie sie za 24
  • +
  • -
  • 0

#11 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 18.05.2012 21:26

Podaj więcej kodu, bo trudno jest powiedzieć.
Upewnij się, że przypisujesz wartość 25 do zmiennej czas tylko 1 raz, a nie za każdym razem.

#12 vernon

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: -9
Mniej niż zer0.

  • Postów:96
  • Lokalizacja:Kraków
Offline

Napisano 18.05.2012 21:34

A i jeszcze jak by mógł ktoś dodać żeby przenosiło po minięciu czasu do innej funckji cmdfunkcja

public odliczanie(id)
{
    new czas=get_cvar_num("cvar");
            
    set_hudmessage( 0, 191, 255, -1.0, 0.1, 0, 6.0, 7.0 );
    show_hudmessage(0, "Rozpocznie sie za %d", czas);
    czas--;            
            
    return PLUGIN_CONTINUE;
}

  • +
  • -
  • 0

#13 mierzwi

    Banned

  • Zbanowany

Reputacja: 235
Wszechwidzący

  • Postów:651
  • Lokalizacja:Polska
Offline

Napisano 19.05.2012 00:56

odejmuj czas przed wyświetleniem, podaj cały kod ziom, bo co ja mam Ci tu strzelić jak nie wiem co gdzie wywołujesz...

jeśli masz fejsa i chcesz mi pomóc to wejdź tutaj: Zaproś kumpla by lubił nasz sklep | Facebook

na pewno jakoś C się odwdzięczę!


#14 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 19.05.2012 01:26

Tak, jak pisałem i pisał emu, podaj cały kod, bo trudno jest strzelać, nie znając kodu.
Ale fakt faktem, że new czas=get_cvar_num("cvar"); czyli pobranie wartości wykonuj tylko raz, przed wywołaniem funkcji odliczanie, a nie wewnątrz niej, bo na chwilę obecną to za każdym razem pobiera czas na nowo wczytuje się z cvaru, więc zawsze przyjmuje wartość 25.

new czas=get_cvar_num("cvar"); // tylko raz pobieramy wartosc

public odliczanie(id)
{
set_hudmessage( 0, 191, 255, -1.0, 0.1, 0, 6.0, 7.0 );
show_hudmessage(0, "Rozpocznie sie za %d", czas);
czas--;

if(czas<=0){
cmdfunkcja();
// i odliczanie() tez juz nie moze byc wykonywane
}

return PLUGIN_CONTINUE;
}


#15 vernon

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: -9
Mniej niż zer0.

  • Postów:96
  • Lokalizacja:Kraków
Offline

Napisano 19.05.2012 08:32

OK poczekajcie kilka minut

#include 
#include
#include

public plugin_init()
{
    register_plugin( "Odlicz", "0,1", "Home" );
    register_clcmd( "say /odlicz", "odliczanie" );
    set_task(1.0,"odliczanie",5673,_,_,"b")
    
    register_event( "HLTV", "eventHLTV", "a" );
    
    register_cvar("odliczanie","25");
    
}
public eventHLTV()
{
    new players[32], num;
    
    get_players( players, num );
    for( new i; i < num ; i++ )
    {
        new id = players[i]
        
        if( !is_user_alive( id ) )
            continue;
        
        set_user_godmode( id, 0 )
    }
}

public odliczanie(id)
{
    if( get_user_team( id ) != 2 )
    return PLUGIN_HANDLED;
    
    new players[32], num;
    
    get_players( players, num );
    for( new i; i < num ; i++ )
    {
        new pid = players[i]
        
        if( !is_user_alive( pid ) )
            continue;
        
        switch( get_user_team( pid ) )
        {
            case 1: WeaponMenu( pid );
            case 2: set_user_godmode( pid, 1 );
        }
        
    }
    
    new czas=get_cvar_num("odliczanie");
            
    set_hudmessage( 0, 191, 255, -1.0, 0.1, 0, 6.0, 7.0 );
    show_hudmessage(0, "Rozpocznie sie za %d", czas);
    czas--;
                        
    return PLUGIN_CONTINUE;
}



public cmdfunkcja(id)
{
    set_hudmessage( 0, 191, 255, -1.0, 0.1, 0, 6.0, 7.0 );
    show_hudmessage( 0, "Koniec odliczania!" );
    
    client_cmd( id, "123" );
    
}
I proszę dodać tez ten limit graczy zeby, komende /odlicz można uzyć dopiero od 6 graczy + wiadomosc w say, do tego jeszcze ze komedne /odlicz mozna tylko do 30 sekund uzyc przed poczatkiem rundy + wiadomosc w say

Użytkownik vernon edytował ten post 19.05.2012 08:35

  • +
  • -
  • 0

#16 vernon

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: -9
Mniej niż zer0.

  • Postów:96
  • Lokalizacja:Kraków
Offline

Napisano 19.05.2012 15:42

benio101 lub emu pomóżcie :)
  • +
  • -
  • 0

#17 GwynBleidD

    Godlike

  • Administrator

Reputacja: 1849
Godlike

  • Postów:3066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 19.05.2012 17:57

@benio101, Twój drugi post w temacie jest kompletnie nie na temat, gdyż ta funkcja uzupełnia amunicję w magazynku trzymanej broni do pełna, a nie dodaje amunicję do plecaka.

Co do tematu:
1.
register_event( "HLTV", "eventHLTV", "a" );

To nie jest event wykrywający nową rundę, w pewnych przypadkach się wykonuje dodatkowo i nie zawsze na początku nowej rundy. Nie można też przy użyciu tego eventu wykonywać niektórych operacji. Zamiast tego użyj:
register_logevent("Poczatek_Rundy", 2, "1=Round_Start");


2. Do uruchomienia jakiejś funkcji po określonym czasie używaj set_task. W przypadku tego pluginu możesz zrobić odliczanie na 2 sposoby: upływający czas co sekundę (czyli wiadomość się zmienia "Rozpocznie się za 10, 9, 8... sekund"), oraz wyświetlenie czasu na początku tylko odliczania (czyli wiadomość jest non stop "Rozpocznie się za 10 sekund").

3. Do pobierania wartości cvarów lepiej używać get_pcvar_num itp. Przykład zastosowania:

new Cvar;
public plugin_init() {
register_plugin .....
Cvar = register_cvar(twoj_cvar, "10");
}

public funkcja(id) {
new wartosc = get_pcvar_num(Cvar);
}

Więcej o tym znajdziesz w poradnikach na forum.

5. Gdy zwracasz PLUGIN_HANDLED w wywołaniu komendy say, wtedy nie wyświetli się ona w czacie dla innych (nie będzie linii w czacie że ktoś to napisał).

Mam dziś dobry dzień, więc poprawiony kod:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>

new czas;
new cOdliczanie, cGracze;

public plugin_init()
{
register_plugin( "Odlicz", "0,1", "Home" );
register_clcmd( "say /odlicz", "odliczanie" );
set_task(1.0,"odliczanie",5673,_,_,"b")

register_logevent("Poczatek_Rundy", 2, "1=Round_Start");

cOdliczanie = register_cvar("odliczanie","25");
cGracze = register_cvar("min_graczy", "6");

}
public Poczatek_Rundy()
{
new players[32], num;

get_players( players, num );
for( new i; i < num ; i++ )
{
new id = players[i]

if( !is_user_alive( id ) )
continue;

set_user_godmode( id, 0 )
}
}

public odliczanie(id)
{
if( get_user_team( id ) != 2 )
return PLUGIN_HANDLED;

new players[32], num;

get_players( players, num );
if(num<get_pcvar_num(cGracze)) {
client_print(id, print_chat, "Musi być co najmniej %d graczy", get_pcvar_num(cGracze));
return PLUGIN_HANDLED;
}
for( new i; i < num ; i++ )
{
new pid = players[i]

if( !is_user_alive( pid ) )
continue;

switch( get_user_team( pid ) )
{
case 1: WeaponMenu( pid );
case 2: set_user_godmode( pid, 1 );
}

}

czas=get_pcvar_num(cOdliczanie);

set_hudmessage( 0, 191, 255, -1.0, 0.1, 0, 6.0, 7.0 );
show_hudmessage(0, "Rozpocznie sie za %d", czas);
czas--;

set_task(1.0, "cmdfunkcja", id);

return PLUGIN_HANDLED;
}

public cmdfunkcja(id) {
if(czas>0) {
set_hudmessage( 0, 191, 255, -1.0, 0.1, 0, 6.0, 7.0 );
show_hudmessage(0, "Rozpocznie sie za %d", czas);
czas--;
set_task(1.0, "cmdfunkcja", id);
return PLUGIN_CONTINUE;
}

set_hudmessage( 0, 191, 255, -1.0, 0.1, 0, 6.0, 7.0 );
show_hudmessage( 0, "Koniec odliczania!" );
}


Do menu z broniami użyj moich funkcji, ewentualnie zmień bronie, które chcesz żeby w nim były, tak jak to opisałem.

Użytkownik GwynBleidD edytował ten post 19.05.2012 18:03

  • +
  • -
  • 0
NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark

#18 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 19.05.2012 18:04

@GwynBleidD Spamujesz mnie na PW i zarzucasz mi pisanie nie na temat, podczas gdy to właśnie Ty nie potrafisz czytać ze zrozumieniem.
Proszę Cię, żebyś mnie więcej nie spamował, bo kolejny taki przypadek zaraportuję. Proszę Cię po raz ostatni, przyznaj się do błędu, a nie próbujesz na siłę się usprawiedliwiać.
Napiszę to ostatni raz, napisałem, że "zamiast męczyć się z magazynkami (...)", a nie, że funkcja ta dodaje amunicję wraz z odpowiednią ilością magazynków.

Ad.1.
register_logevent("Poczatek_Rundy", 2, "1=Round_Start");
Nie używaj powyższego kodu, gdyż nie wykryje on m.in. restartu rundy, czy innych niestandardowych sytuacji.
Zamiast tego użyj
register_event("HLTV","round_begin","a","1=0","2=0");


Odnośnie powyższego kodu, w przypadku choćby stosowania rozgrzewki, nie jest on poprawny.

#19 GwynBleidD

    Godlike

  • Administrator

Reputacja: 1849
Godlike

  • Postów:3066
  • Steam:steam
  • Lokalizacja:Przemyśl
Offline

Napisano 19.05.2012 18:31

@benio, tak się składa, że jest dokładnie odwrotnie, to event HLTV nie wykrywa restartu rundy. Round_Start jest wykonywany po każdym upłynięciu freeze time, jeśli nie ma freeze time, to wykonywany jest on natychmiast. Nie zdarzyła mi się jeszcze żadna sytuacja, aby się ten kod nie wykonał. Natomiast event HLTV nie wykonuje się przy pierwszej rundzie na mapie, po restarcie mapy (sv_restart 1, lub gdy na serwerze pojawią się osoby w obu drużynach), oraz nie można bezpośrednio w niej dawać komuś broni, gdyż wywala to co jakiś czas błędy. Poza tym wykonuje się ona czasem w dodatkowych sytuacjach, gdy serwer zmuszony jest poinformować serwery HLTV o obecnych graczach na serwerze, ich drużynach itp.

Co do zarzucenia Ci pisania nie na temat, zgadzam się nie doczytałem, że nie jest to zamiennik mojego kodu, ale podtrzymuję bezsensowność Twojego postu, gdyż nie napisałeś dokładnie do czego ta funkcja służy i gdzie jej użyć, a wątpię żeby tak początkujący skrypter jak vernon domyślił się jak z tej funkcji pożytek zrobić.
  • +
  • -
  • 0
NIE pomagam na PW. Nie trudź się, na zlecenia nie odpiszę... Od pomagania jest forum.
NIE zaglądam w tematy wysłane na PW. Jeśli są na forum to prędzej czy później je przeczytam. Jeśli mam co w nich odpisać, to odpiszę.
 
1988650.png?theme=dark

#20 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 19.05.2012 18:42

Funkcja register_logevent( "RoundStart", 2, "1=Round_Start" ); wykonuje się po upływie freezetime, a nie na początku rundy, więc znowu gadasz głupoty.
Od restartu jest register_event("TextMsg", "restart_round", "a", "2&#Game_will_restart_in")

@up:
set_task(1.0,"odliczanie",5673,_,_,"b")
sprawdziłeś chociaż, co napisałeś?




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

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