Przepraszam, ze tak ciagle placze tutaj, ale dość mnie ten plugin zainteresował.
Chciałem aby dodawał doświadczenie w diablomodzie. Niestety plugin nie wykonuje komendy. Coś zrobiłem źle? bo nie moge doszukac się błędu,
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <challenge>
#define PLUGIN "Challenge Szybkie Info"
#define VERSION "1.0"
#define AUTHOR "R3X"
new const gszChallenge[]= "Zabij 5 przeciwnikow z noza";
new const gszAward[] = "+4500 EXP";
new chid;
new gDone[33];
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
//dodaj wyzwanie do listy
chid = register_challenge(gszChallenge, gszAward);
//wlacz automatyczne zlicznie zabic nozem
challenge_uses_stats(CSW_KNIFE);
}
//Funkcja ulatwiajaca sprawdzenie czy gracz spelnia warunki wyzwania
hasAccess(id){
return (ch_get_user_stats(id, CSW_KNIFE) >= 5);
}
public client_putinserver(id){
gDone[id] = 0;
}
//aktualizacja tabeli od razu przy podlaczeniu sie gracza
public client_data_loaded(id){
gDone[id] = hasAccess(id);
if(gDone[id])
challenge_done(id, chid, 0); //wykonanie bez informacji
}
//gracz dostal punkt
public client_gain_point(id){
if(!gDone[id] && hasAccess(id)){
//daj 4500 expa
new steam_id[35]
get_user_authid ( id, steam_id, 34 )
server_cmd("amx_giveexp %s 4500", steam_id)
//oznacz jako wykonane i pokaz informacje
challenge_done(id, chid);
gDone[id] = 1;
}
}
//Postep wyzwania
public challenge_progress(id, challenge, szProgress[], size){
formatex(szProgress, size, "%d/%d", ch_get_user_stats(id, CSW_KNIFE), 5);
}
jeśli to coś pomoże to komenda wymaga admin_immunity
i ponizszy plugin tez nie moze wykonac tej koemndy na serwerze:
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say_team /exp", "expo");
register_clcmd("say /exp", "expo");
}
public expo(id){
new steam_id[33]
get_user_name( id, steam_id, 32 )
server_cmd("amx_giveexp %s 4500", steam_id)
ColorChat(0, YELLOW, "^x04[DIABLO]^x01 dostales 4500 expa!");
}
Użytkownik Syczaj edytował ten post 02.07.2011 16:01