←  Problemy

AMXX.pl: Support AMX Mod X i SourceMod

»

Multilanguage - nie wyswietla sie tekst


Najlepsza odpowiedź Filip1512 07.07.2013 12:53

Popatrz w plugin_init():

pcvar_rate = register_cvar("rsf_rate", "25000")
Z zmiennych globalnych usuń:
new pcvar_cmdrate;

Jeśli usunę pcvar_cmdrate, to usunę cvar na wartość cl_cmdrate, ale dzięki, bo przy okazji zauważyłem, że mam zdublowany "cmdbackup", a cmdrate nigdzie nie było.
 

Zamień:

client_cmd(id, "cl_cmdrate %d", get_pcvar_num(pcvar_cmdrate))
->
client_cmd(id, "cl_cmdrate %d", get_pcvar_num(pcvar_rate))

To już będzie zbędne, ale w takim razie, co z wymuszeniem interpu? Bo próbowałem %d, %f, %.2f i nic nie działało, tak samo te wiadomości na czacie/hudzie.

 

//edit
Zapomniałem włączyć modułów :facepalm2:

Przejdź do postu
Zablokowany

  • +
  • -
Filip1512 - zdjęcie Filip1512 07.07.2013

Cześć,
chciałem napisać plugin i dodać do niego wielojęzykowość, lecz coś nie działa.. nie wyświetla się wiadomość ani na hudzie ani na czacie. Początkowo przed usunięciem kilku błędów czasami się wyświetlał po polsku, a czasami po angielsku, a obecnie wcale.
 
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <ColorChat>

#define PLUGIN "Rate'y + HUDMSG"
#define VERSION "2.0"
#define AUTHOR "Filip / `NN"

new maxplayers;

new pcvar_rate;
new pcvar_cmdbackup;
new pcvar_cmdrate;
new pcvar_updaterate;
new pcvar_interp;

new pcvar_hud_show;
new pcvar_hud_showtype;
new pcvar_hud_time;

public plugin_init(){
	register_plugin(PLUGIN, VERSION, AUTHOR)
	RegisterHam(Ham_Spawn, "player", "raty", 1);
	
	register_dictionary("rsf.txt")
	
	pcvar_rate = register_cvar("rsf_rate", "25000")
	pcvar_cmdbackup = register_cvar("rsf_cmdbackup", "2")
	pcvar_cmdbackup = register_cvar("rsf_cmdrate", "101")
	pcvar_updaterate = register_cvar("rsf_updaterate", "101")
	pcvar_interp = register_cvar("rsf_interp", "0.01")
	
	pcvar_hud_show = register_cvar("rsf_hud_show", "1")
	pcvar_hud_showtype = register_cvar("rsf_hud_showtype", "0")
	pcvar_hud_time = register_cvar("rsf_hud_time", "120.0")
	
	maxplayers = get_maxplayers()
	
	for(new id=1; id<maxplayers; id++)
		if(get_pcvar_float(pcvar_hud_time) != 0 && get_pcvar_num(pcvar_hud_show) == 1)
			set_task(get_pcvar_float(pcvar_hud_time), "hudmsg", id, _, _, "b")
}

public plugin_cfg(){
	new cfgDir[64]
	get_configsdir(cfgDir, 63)
	server_cmd("exec %s/rsf.cfg", cfgDir)
}


public raty(id){
	client_cmd(id, "rate %d", get_pcvar_num(pcvar_rate))
	client_cmd(id, "cl_cmdbackup %d", get_pcvar_num(pcvar_cmdbackup))
	client_cmd(id, "cl_cmdrate %d", get_pcvar_num(pcvar_cmdrate))
	client_cmd(id, "cl_updaterate %d",get_pcvar_num(pcvar_updaterate))
	client_cmd(id, "ex_interp %f", get_pcvar_float(pcvar_interp))
	
	if(get_pcvar_num(pcvar_hud_show) == 1 && get_pcvar_float(pcvar_hud_time) == 0)
		hudmsg(id);
}



public hudmsg(id){
	if(get_pcvar_num(pcvar_hud_show) == 1){
		if(get_pcvar_num(pcvar_hud_showtype) == 0){
			set_hudmessage(255, 100, 10, 0.1, 0.7, 0, 6.0, 9.0, 0.0, 0.0, 2)
			ShowSyncHudMsg(id, CreateHudSyncObj(), "%L", LANG_PLAYER, "RSF_INFO")
		}
		
		if(get_pcvar_num(pcvar_hud_showtype) == 1)
			ColorChat(id, GREEN, "[RSF]^x01 %L", LANG_PLAYER, "RSF_INFO")
	}
}
Tak samo nie zmienia interpu, ale resztę komend już tak.

W error logach cały czas:
 

L 07/07/2013 - 03:59:48: Invalid CVAR pointer
L 07/07/2013 - 03:59:48: [amxx] Run time error 10 (plugin "RatySpawnByFilip.amxx") (native "get_pcvar_num") - debug not enabled!
L 07/07/2013 - 03:59:48: [amxx] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).


Użytkownik Filip1512 edytował ten post 07.07.2013 03:05
Odpowiedz

  • +
  • -
speedkill - zdjęcie speedkill 07.07.2013

L 07/07/2013 - 03:59:48: [amxx] Run time error 10 (plugin "RatySpawnByFilip.amxx") (native "get_pcvar_num") - debug not enabled!
L 07/07/2013 - 03:59:48: [amxx] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).
Odpowiedz

  • +
  • -
Filip1512 - zdjęcie Filip1512 07.07.2013

L 07/07/2013 - 03:59:48: [amxx] Run time error 10 (plugin "RatySpawnByFilip.amxx") (native "get_pcvar_num") - debug not enabled!
L 07/07/2013 - 03:59:48: [amxx] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).


Niedługo wrzucę logi z debugowania, ale powiedz czy wstępnie widzisz cokolwiek złego w tym kodzie?


//edit

L 07/07/2013 - 11:55:47: Invalid CVAR pointer
L 07/07/2013 - 11:55:47: [amxx] Displaying debug trace (plugin "RatySpawnByFilip.amxx")
L 07/07/2013 - 11:55:47: [amxx] Run time error 10: native error (native "get_pcvar_num")
L 07/07/2013 - 11:55:47: [amxx] [0] Untitled.sma::raty (line 55)


Użytkownik Filip1512 edytował ten post 07.07.2013 11:02
Odpowiedz

  • +
  • -
speedkill - zdjęcie speedkill 07.07.2013

Popatrz w plugin_init():
pcvar_rate = register_cvar("rsf_rate", "25000")
Z zmiennych globalnych usuń:
new pcvar_cmdrate;
Zamień:
client_cmd(id, "cl_cmdrate %d", get_pcvar_num(pcvar_cmdrate))
->
client_cmd(id, "cl_cmdrate %d", get_pcvar_num(pcvar_rate))
Odpowiedz

  • +
  • -
Najlepsza odpowiedź Filip1512 - zdjęcie Filip1512 07.07.2013

Popatrz w plugin_init():

pcvar_rate = register_cvar("rsf_rate", "25000")
Z zmiennych globalnych usuń:
new pcvar_cmdrate;

Jeśli usunę pcvar_cmdrate, to usunę cvar na wartość cl_cmdrate, ale dzięki, bo przy okazji zauważyłem, że mam zdublowany "cmdbackup", a cmdrate nigdzie nie było.
 

Zamień:

client_cmd(id, "cl_cmdrate %d", get_pcvar_num(pcvar_cmdrate))
->
client_cmd(id, "cl_cmdrate %d", get_pcvar_num(pcvar_rate))

To już będzie zbędne, ale w takim razie, co z wymuszeniem interpu? Bo próbowałem %d, %f, %.2f i nic nie działało, tak samo te wiadomości na czacie/hudzie.

 

//edit
Zapomniałem włączyć modułów :facepalm2:

Odpowiedz
Zablokowany