[ROZWIĄZANE] Poszukuje FREELVL
Najlepsza odpowiedź ka.linux 17.03.2015 14:52
Proszę gracz może tylko raz użyć i tylko na jednej klasie.
#include <amxmodx> #include <codmod> #include <hamsandwich> #include <nvault> #pragma semicolon 1 #define MAX 32 new name[ MAX + 1 ][ MAX ], plik_vault, vaultkey[ 64 ], vaultdata[ 256 ]; new bool:wziol_exp[ MAX + 1 ]; public plugin_init( ) { register_plugin( "Darmowy EXP", "1.0", "ka.linux" ); plik_vault = nvault_open( "maexp" ); register_clcmd("say /free","DajEXP"); } public plugin_end( ) nvault_close( plik_vault ); public client_putinserver( id ) { wziol_exp[ id ] = false; name[ id ] = ""; if( is_user_connected( id ) ){ get_user_name( id , name[ id ], 31 ); wczytaj_exp( id ); } } public DajEXP(id) { if(!is_user_alive(id)) return PLUGIN_CONTINUE; if(!wziol_exp[ id ]) { cod_set_user_xp(id, cod_get_user_xp(id)+1000); client_print(id,3,"Dostales 1000 XP!"); wziol_exp[ id ] = true; } else client_print(id,3,"Wykorzystales darmowy EXP lub juz go nie potrzebujesz"); return PLUGIN_CONTINUE; } public client_disconnect( id ) { zapisz_exp( id ); wziol_exp[ id ] = false; name[ id ] = ""; } public wczytaj_exp( id ) { format( vaultkey, sizeof vaultkey - 1, "%s-m-", name[ id ] ); format( vaultdata, sizeof vaultdata - 1,"%d",wziol_exp[ id ] ); nvault_get( plik_vault, vaultkey, vaultdata, sizeof vaultdata - 1 ); new wartosc[ 6 ]; parse( vaultdata,wartosc, 5 ); if( str_to_num( wartosc ) ) wziol_exp[ id ] = true; } public zapisz_exp( id ){ if( wziol_exp[ id ] ){ format( vaultkey, sizeof vaultkey - 1, "%s-m-", name[ id ] ) ; format( vaultdata, sizeof vaultdata - 1, "1" ); nvault_set( plik_vault, vaultkey, vaultdata ); } } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par } */Przejdź do postu
Vacik
16.03.2015
Witam poszukuje działającego pluginu który jednorazowo (Zapis na nick) przydziela X poziomów po wpisaniu komendy
/startlvl
LVL przydziela tylko i wyłącznie do 5 poziomu
Każdy gracz może użyć komendy tylko jeden raz
Jeżeli nie da rady to może coś takiego:
Po wpisaniu /freeexp, gracz jednorazowo otrzymuje X expa
Vacik
16.03.2015
To przyznaje poziom z poziomów online.
Ja chce aby każdemu kto wejdzie na serwer i wpisze
/freeexp
przyznawało np 1000 EXPA
I każdy nick może użyć 1 raz takiej komendy
Użytkownik Vacik edytował ten post 16.03.2015 12:26
GreM!
16.03.2015
Nie mogłem sprawdzić, więc nie jestem pewien.
Po wpisaniu /freexp gracz dostaje +1000 expa.
Załączone pliki
Użytkownik GreM! edytował ten post 16.03.2015 14:15
NieWiemMamMac@
16.03.2015
Nie mogłem sprawdzić, więc nie jestem pewien.
Po wpisaniu /freexp gracz dostaje +1000 expa.
Robisz reconnecta i po wpisaniu komendy dostajesz ponownie 1000 exp'a.
#include <amxmodx> #include <amxmisc> #include <codmod> public plugin_init() { register_plugin("xyz", "1.0", "xyz"); register_clcmd("say /xp", "XP"); } public XP(id) { if(cod_get_user_xp(id) < 1000) { cod_set_user_xp(id, cod_get_user_xp(id)+1000); client_print(id,3,"Dostales 1000 XP!") } else client_print(id,3,"Wykorzystales darmowy EXP lub juz go nie potrzebujesz") }
Można zrobić to też tak.
Użytkownik NieWiemMamMac@ edytował ten post 16.03.2015 14:34
GreM!
16.03.2015
Nie mogłem sprawdzić, więc nie jestem pewien.
Po wpisaniu /freexp gracz dostaje +1000 expa.
Robisz reconnecta i po wpisaniu komendy dostajesz ponownie 1000 exp'a.
#include <amxmodx> #include <amxmisc> #include <codmod> public plugin_init() { register_plugin("xyz", "1.0", "xyz"); register_clcmd("say /xp", "XP"); } public XP(id) { if(cod_get_user_xp(id) < 1000) { cod_set_user_xp(id, cod_get_user_xp(id)+1000); client_print(id,3,"Dostales 1000 XP!") } else client_print(id,3,"Wykorzystales darmowy EXP lub juz go nie potrzebujesz") }Można zrobić to też tak.
Racja.
Vacik
16.03.2015
Ładnie to działa tylko gracz moze użyć komendy na każdej klasie, da rade zrobić to tak aby mógł tylko raz ? na jaka klase wybierze na taka dostanie ?.
Najlepsza odpowiedź
ka.linux
17.03.2015
Proszę gracz może tylko raz użyć i tylko na jednej klasie.
#include <amxmodx> #include <codmod> #include <hamsandwich> #include <nvault> #pragma semicolon 1 #define MAX 32 new name[ MAX + 1 ][ MAX ], plik_vault, vaultkey[ 64 ], vaultdata[ 256 ]; new bool:wziol_exp[ MAX + 1 ]; public plugin_init( ) { register_plugin( "Darmowy EXP", "1.0", "ka.linux" ); plik_vault = nvault_open( "maexp" ); register_clcmd("say /free","DajEXP"); } public plugin_end( ) nvault_close( plik_vault ); public client_putinserver( id ) { wziol_exp[ id ] = false; name[ id ] = ""; if( is_user_connected( id ) ){ get_user_name( id , name[ id ], 31 ); wczytaj_exp( id ); } } public DajEXP(id) { if(!is_user_alive(id)) return PLUGIN_CONTINUE; if(!wziol_exp[ id ]) { cod_set_user_xp(id, cod_get_user_xp(id)+1000); client_print(id,3,"Dostales 1000 XP!"); wziol_exp[ id ] = true; } else client_print(id,3,"Wykorzystales darmowy EXP lub juz go nie potrzebujesz"); return PLUGIN_CONTINUE; } public client_disconnect( id ) { zapisz_exp( id ); wziol_exp[ id ] = false; name[ id ] = ""; } public wczytaj_exp( id ) { format( vaultkey, sizeof vaultkey - 1, "%s-m-", name[ id ] ); format( vaultdata, sizeof vaultdata - 1,"%d",wziol_exp[ id ] ); nvault_get( plik_vault, vaultkey, vaultdata, sizeof vaultdata - 1 ); new wartosc[ 6 ]; parse( vaultdata,wartosc, 5 ); if( str_to_num( wartosc ) ) wziol_exp[ id ] = true; } public zapisz_exp( id ){ if( wziol_exp[ id ] ){ format( vaultkey, sizeof vaultkey - 1, "%s-m-", name[ id ] ) ; format( vaultdata, sizeof vaultdata - 1, "1" ); nvault_set( plik_vault, vaultkey, vaultdata ); } } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par } */
radim
19.03.2015
Ten temat został zamknięty przez moderatora.
Powód: Pomoc udzielona
Jeśli się z tym nie zgadzasz, raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami,
Zespół AMXX.PL