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

Nie Mam Pomysłu :(


  • Zamknięty Temat jest zamknięty
12 odpowiedzi w tym temacie

#1 Batonik

    Wszechpomocny

  • Użytkownik

Reputacja: 26
Życzliwy

  • Postów:393
  • GG:
  • Steam:steam
  • Lokalizacja:Tarnobrzeg
Offline

Napisano 30.12.2009 12:33

Witam, otóż znalazłem taki plugin od wyboru interpu i chodzi mi o to aby po wyborze interpu, wywoływał go jakiś czas

Oto kod .sma

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Interp ask"
#define VERSION "1.0"
#define AUTHOR "silversurfer thx r3x"

#define TASK_SHOWMENU 432

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR);
}
public client_putinserver(id){
    if(!is_user_bot(id))
        eventInGame(id);
}
public show_menu_(tid) {
    new id=tid-TASK_SHOWMENU;
    new iTeam=get_user_team(id);
    new menu_id, keys;
    new menuUp = player_menu_info( id, menu_id, keys );
    if ( iTeam && (menuUp <= 0 || menu_id < 0) )
        menu_displayer(id);
    else
        set_task(1.0, "show_menu_", tid);
}
public eventInGame(id){
    set_task(1.0, "show_menu_", id+TASK_SHOWMENU);
}
public menu_displayer(id){
    new menu = menu_create("Jaki interp preferujesz?", "menu_handler")
    menu_additem(menu, "Interp - 0.01", "1", 0)
    menu_additem(menu, "Interp - 0.03", "2", 0)
    menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
    menu_display(id, menu, 0)
}
public menu_handler(id, menu, item)
{
    if (item == MENU_EXIT)
    {
        return PLUGIN_HANDLED
    }
    new data[6], iName[64]
    new iaccess, callback
    menu_item_getinfo(menu, item, iaccess, data,5, iName, 63, callback)
    new key = str_to_num(data)
    switch(key)
    {
        case 1:{
            client_cmd(id, "ex_interp 0.01")
            menu_destroy(menu)
            return PLUGIN_HANDLED
     
        }
        case 2:{
            client_cmd(id, "ex_interp 0.03")
            menu_destroy(menu)
            return PLUGIN_HANDLED
      
       }
    }
    menu_destroy(menu)
    return PLUGIN_HANDLED
}

  • +
  • -
  • 0

#2 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 30.12.2009 14:15

Spróbuj tego, nie wiedziałem czy chcesz pokazywać menu czy ustawiać interp tym taskiem, więc zrobiłem wygodniej dla graczy (2 opcja :D)

Załączone pliki


  • +
  • -
  • 0

#3 Batonik

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 26
Życzliwy

  • Postów:393
  • GG:
  • Steam:steam
  • Lokalizacja:Tarnobrzeg
Offline

Napisano 30.12.2009 18:25

W sensie że wymusza co jakiś czas: OK
Ale gdy się wybierze 0.01 - na początku jest 0.01 a kolejene wymuszenia 0.009000
a gdy się wybierze 0.03 wymusza 0.02
  • +
  • -
  • 0

#4 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 30.12.2009 22:18

zamień
gfInterps[id] = 0.01;
na
gfInterps[id] = 0.011;
a
gfInterps[id] = 0.03;
na
gfInterps[id] = 0.031;

  • +
  • -
  • 1

#5 Batonik

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 26
Życzliwy

  • Postów:393
  • GG:
  • Steam:steam
  • Lokalizacja:Tarnobrzeg
Offline

Napisano 30.12.2009 22:44

więc tak jak wybieram 0.01 dalej to samo czyli: 0.009000

a gdy wybieram 0.03 to już dobrze zmienia 0.03

A najbardziej chodzi mi o 0.01 bo najwięcej graczy gra na nim
  • +
  • -
  • 0

#6 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 30.12.2009 23:00

to może zmień i cl_updaterate
  • +
  • -
  • 0

#7 Batonik

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 26
Życzliwy

  • Postów:393
  • GG:
  • Steam:steam
  • Lokalizacja:Tarnobrzeg
Offline

Napisano 31.12.2009 13:21

Zmieniłem nic nie dało:

tzn jest tak;

wchodzisz wybierasz interp zmienia ci na 0.01 i jest dobrze po czym po paru sekundach tak jak napisałem wcześniej wymusza na 0.009000

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Interp ask"
#define VERSION "1.0"
#define AUTHOR "silversurfer thx r3x"

#define TASK_SHOWMENU 432
#define TASK_SETINTERP 4321

new Float:gfInterps[33];
new gcvarInterval;

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR);
    gcvarInterval = register_cvar("amx_interp_interval","10",0,10.0);
}
public client_putinserver(id){
    if(!is_user_bot(id))
        eventInGame(id);
}

public show_menu_(tid) {
    new id=tid-TASK_SHOWMENU;
    new iTeam=get_user_team(id);
    new menu_id, keys;
    new menuUp = player_menu_info( id, menu_id, keys );
    if ( iTeam && (menuUp <= 0 || menu_id < 0) )
        menu_displayer(id);
    else
        set_task(1.0, "show_menu_", tid);
}
public setInterp(id){
	id -= TASK_SETINTERP;
	if(is_user_connected(id) || !is_user_bot(id))
		client_cmd(id, "ex_interp %.2f", gfInterps[id]);
}
public eventInGame(id){
    gfInterps[id] = 0.011;
    set_task(1.0, "show_menu_", id+TASK_SHOWMENU);
}
public menu_displayer(id){
    new menu = menu_create("Wybierz interp:", "menu_handler")
    menu_additem(menu, "Interp - 0.01", "1", 0)
    menu_additem(menu, "Interp - 0.03", "2", 0)
    menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
    menu_display(id, menu, 0)
}
public menu_handler(id, menu, item)
{

    if (item == MENU_EXIT)
    {
        return PLUGIN_HANDLED
    }
    set_task(get_pcvar_float(gcvarInterval), "setInterp",TASK_SETINTERP+id,_,_,"b");

    new data[6], iName[64]
    new iaccess, callback
    menu_item_getinfo(menu, item, iaccess, data,5, iName, 63, callback)
    new key = str_to_num(data)
    switch(key)
    {
        case 1:{
            client_cmd(id, "cl_updaterate 101; wait; wait; ex_interp 0.01")
            gfInterps[id] = 0.01;
            menu_destroy(menu)
            return PLUGIN_HANDLED
     
        }
        case 2:{
            client_cmd(id, "cl_updaterate 101; wait; wait; ex_interp 0.03")
            gfInterps[id] = 0.031;
            menu_destroy(menu)
            return PLUGIN_HANDLED
      
       }
    }
    menu_destroy(menu)
    return PLUGIN_HANDLED
}

Użytkownik Batonik edytował ten post 31.12.2009 13:23

  • +
  • -
  • 0

#8 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 31.12.2009 14:24

#include <amxmodx>

#include <amxmisc>



#define PLUGIN "Interp ask"

#define VERSION "1.0"

#define AUTHOR "silversurfer thx r3x"



#define TASK_SHOWMENU 432

#define TASK_SETINTERP 4321



new gInterps[33];

new gcvarInterval;

new s_interp[11][]={"0.001","0.01","0.02","0.03","0.04","0.05","0.06","0.07","0.08","0.09","0.1"}



public plugin_init() {

    register_plugin(PLUGIN, VERSION, AUTHOR);

    gcvarInterval = register_cvar("amx_interp_interval","10",0,10.0);

}

public client_putinserver(id){

    if(!is_user_bot(id))

        eventInGame(id);

}



public show_menu_(tid) {

    new id=tid-TASK_SHOWMENU;

    new iTeam=get_user_team(id);

    new menu_id, keys;

    new menuUp = player_menu_info( id, menu_id, keys );

    if ( iTeam && (menuUp <= 0 || menu_id < 0) )

        menu_displayer(id);

    else

        set_task(1.0, "show_menu_", tid);

}

public setInterp(id){

	id -= TASK_SETINTERP;

	if(is_user_connected(id) || !is_user_bot(id))

		client_cmd(id, "ex_interp %s", s_interp[gInterps[id]]);

}

public eventInGame(id){

    gfInterps[id] = 0.011;

    set_task(1.0, "show_menu_", id+TASK_SHOWMENU);

}

public menu_displayer(id){

    new menu = menu_create("Wybierz interp:", "menu_handler")

    menu_additem(menu, "Interp - 0.01", "1", 0)

    menu_additem(menu, "Interp - 0.03", "2", 0)

    menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)

    menu_display(id, menu, 0)

}

public menu_handler(id, menu, item)

{



    if (item == MENU_EXIT)

    {

        return PLUGIN_HANDLED

    }

    set_task(get_pcvar_float(gcvarInterval), "setInterp",TASK_SETINTERP+id,_,_,"b");



    new data[6], iName[64]

    new iaccess, callback

    menu_item_getinfo(menu, item, iaccess, data,5, iName, 63, callback)

    new key = str_to_num(data)

    switch(key)

    {

        case 1:{

            client_cmd(id, "cl_updaterate 101; wait; wait; ex_interp 0.01")

            gInterps[id]=1

            menu_destroy(menu)

            return PLUGIN_HANDLED

     

        }

        case 2:{

            client_cmd(id, "cl_updaterate 101; wait; wait; ex_interp 0.03")

            gInterps[id]=3

            menu_destroy(menu)

            return PLUGIN_HANDLED

      

       }

    }

    menu_destroy(menu)

    return PLUGIN_HANDLED

}

  • +
  • -
  • 1

#9 Batonik

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 26
Życzliwy

  • Postów:393
  • GG:
  • Steam:steam
  • Lokalizacja:Tarnobrzeg
Offline

Napisano 01.01.2010 04:40

Ok, dzięki działa. :) Można zamknąć ;)
  • +
  • -
  • 0

#10 Adminek AMXX.PL

    Admin :)

  • Bot

Reputacja: 156
Profesjonalista

  • Postów:7 490
  • Lokalizacja:AMXX.PL
Offline

Napisano 01.01.2010 10:06

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Problem rozwiązany

Jeśli się z tym nie zgadzasz, zgłoś ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL

#11 Batonik

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 26
Życzliwy

  • Postów:393
  • GG:
  • Steam:steam
  • Lokalizacja:Tarnobrzeg
Offline

Napisano 01.01.2010 21:31

Musiałem wykasować 40 linijkę ponieważ nie chciał się plugin skompilować, no i wymuszał to co wymusza lecz ostatnio w logach serwera występuję error związany z tym pluginem:

[AMXX] Displaying debug trace (plugin "interpowo.amxx")
L 01/01/2010 - 21:10:10: [AMXX] Run time error 10: native error (native "player_menu_info")
L 01/01/2010 - 21:10:10: [AMXX]    [0] interpowo.sma::show_menu_ (line 28)
L 01/01/2010 - 21:24:14: Player 3 is not ingame
L 01/01/2010 - 21:24:14: [AMXX] Displaying debug trace (plugin "interpowo.amxx")
L 01/01/2010 - 21:24:14: [AMXX] Run time error 10: native error (native "player_menu_info")
L 01/01/2010 - 21:24:14: [AMXX]    [0] interpowo.sma::show_menu_ (line 28)

Linijka 28, czasami przez to serwer czasami crashuje :(
  • +
  • -
  • 0

#12 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 01.01.2010 23:24

Pod
public show_menu_(tid) {
    new id=tid-TASK_SHOWMENU;
Dodaj:
if(!is_user_connected(id)) return

  • +
  • -
  • 1

#13 Batonik

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 26
Życzliwy

  • Postów:393
  • GG:
  • Steam:steam
  • Lokalizacja:Tarnobrzeg
Offline

Napisano 02.01.2010 19:50

Ok, działa dzięki :)
  • +
  • -
  • 0




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

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