działa?
zGraferz
16.02.2009
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #define PLUGIN "Mega VIP" #define VERSION "1.0.0" #define AUTHOR "Grafer" #define FLAGA ADMIN_LEVEL_G public plugin_init() { register_event("HLTV", "nowa_runda", "a", "1=0", "2=0") register_plugin("VIP test", "1.0", "Grafer") } public client_putinserver(id) { if( get_user_flags(player) & FLAGA) client_print(player,print_chat,"Przyszedl VIP - player_name") } public nowa_runda(id) { if( get_user_flags(player) & FLAGA) set_user_health(player, 130) set_user_armor(player, 130) set_user_gravity (player, Float:gravity = 0.9 ) set_user_maxspeed (player, [ Float:speed = 500.0 ] ) cs_set_user_model (player, const model[vipp] ) } public client_disconnect(id) { if( get_user_flags(player) & FLAGA) client_print(player,print_chat,"Odszedł VIP - player_name") }
Miczu
16.02.2009
set_user_gravity (player, Float:gravity = 0.9 ) set_user_maxspeed (player, [ Float:speed = 500.0 ] ) cs_set_user_model (player, const model[vipp] )Zle
client_print(player,print_chat,"Odszedł VIP - player_name")zadziala ale nie tak jak chcesz.
zGraferz
16.02.2009
Miczu
16.02.2009
Float:speed = 500.0
wystarczy sama liczba - nie daje sie typu danych (np. Float)
const model[vipp]
const - jak wyzej, nie masz ani zmiennej model, ani adresu do modelu, ani nie dales prechache modelu do podmiany. Zobacz byle jaki sma z podmiana modeli (polecam m_girl bo malo kodu ma).
wizu
16.02.2009
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#define PLUGIN "Mega VIP"
#define VERSION "1.0.0"
#define AUTHOR "Grafer"
#define FLAGA ADMIN_LEVEL_G
public plugin_init() {
register_event("HLTV", "nowa_runda", "a", "1=0", "2=0")
register_plugin("VIP test", "1.0", "Grafer")
}
public client_putinserver(id)
{
if( get_user_flags(player) & FLAGA)
client_print(player,print_chat,"Przyszedl VIP - player_name")
}
public nowa_runda(id)
{
if( get_user_flags(player) & FLAGA)
set_user_health(player, 130)
set_user_armor(player, 130)
set_user_gravity (player, Float:gravity = 0.9 )
set_user_maxspeed (player, [ Float:speed = 500.0 ] )
cs_set_user_model (player, const model[vipp] )
}
public client_disconnect(id)
{
if( get_user_flags(player) & FLAGA)
client_print(player,print_chat,"Odszedł VIP - player_name")
}
Na czerwono błędy rzucające się jako pierwsze w oczy.
Na początek radzę przeczytać jakiś kurs dotyczący podstaw chociażby C++. Znacznie ułatwi Ci to naukę PAWN'a.
zGraferz
16.02.2009
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #define PLUGIN "Mega VIP" #define VERSION "1.0.0" #define AUTHOR "Grafer" #define FLAGA ADMIN_LEVEL_G public plugin_init() { register_plugin("VIP test", "1.0", "Grafer") register_event("HLTV", "nowa_runda", "a", "1=0", "2=0") register_event("TeamInfo","team_assign","a") } public plugin_precache() { precache_model("models/player/vipct/vipct.mdl") precache_model("models/player/viptt/viptt.mdl") } public client_putinserver(player) { if( get_user_flags(player) & FLAGA) client_print(player,print_chat,"Przyszedl VIP - player_name") } public nowa_runda(player) { if( get_user_flags(player) & FLAGA) set_user_health(player, 130) set_user_armor(player, 130) set_user_gravity (player, 0.9 ) set_user_maxspeed (player, 500.0 ) } public team_assign() { new id=read_data(1) if(get_user_flags(player) & ADMIN_LEVEL_G) { new team[32] read_data(2,team,31) if(equal("TERRORIST",team)) cs_set_user_model(id,"viptt") if(equal("CT",team)) cs_set_user_model(id,"vipct") } } public client_disconnect(player) { if( get_user_flags(player) & FLAGA) client_print(player,print_chat,"Odszedł VIP - player_name") }
Miczu
16.02.2009
Popraw to jeszcze i z twojego 2 tematu (hmm... nie dalo sie w 1?) daj client_print poprawione.
darkman
16.02.2009
2. funkcja client_putinserver. przy pobraniu flag usera jako index próbujesz użyć zmiennej która nigdzie nie została zadeklarowana. do tego służy parametr forwarda client_putinserver o nazwie id. w funkcji nowa runda jest rzeczowy błąd mianowicie nie posiada ona parametru id. przeczytaj tutorial o eventach, wtedy sie dowiesz.
3. printowanie nicku usera. wszystko obięte w cudzysłowie(oprócz odsyłaczy do zmiennych np. %s(string) %f(float) %i lub %d(integer)) jest pojmowane 'dosłownie' w skutek czego zostanie ci wydrukowany wyraz player name. trzeba zapisać do zmiennej imie gracza(33 elementy wystarczą)
new name[33]; get_user_name(id, name, 32); client_print(player,print_chat,"Przyszedl VIP - %s", name);
teraz nie ma prawa nie zadziałać.
zGraferz
16.02.2009
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #define PLUGIN "Mega VIP" #define VERSION "1.0.0" #define AUTHOR "Grafer" #define FLAGA ADMIN_LEVEL_G public plugin_init() { register_plugin("VIP test", "1.0", "Grafer") register_event("HLTV", "nowa_runda", "a", "1=0", "2=0") register_event("TeamInfo","team_assign","a") } public plugin_precache() { precache_model("models/player/vipct/vipct.mdl") precache_model("models/player/viptt/viptt.mdl") } public client_putinserver(id) { if( get_user_flags(0) & FLAGA) new name[33]; get_user_name(0, name, 32); client_print(0,print_chat,"Przyszedl VIP - %s", name); } public nowa_runda() { if( get_user_flags(id) & FLAGA) set_user_health(0, 130) set_user_armor(0, 130) set_user_gravity (0, 0.9 ) set_user_maxspeed (0, 500.0 ) } public team_assign(id) { new id=read_data(1) if(get_user_flags(id) & ADMIN_LEVEL_G) { new team[32] read_data(2,team,31) if(equal("TERRORIST",team)) cs_set_user_model(id,"viptt") if(equal("CT",team)) cs_set_user_model(id,"vipct") } } public client_disconnect(id) { if( get_user_flags(id) & FLAGA) new name[33]; get_user_name(0, name, 32); client_print(0,print_chat,"Odszedl VIP - %s", name); }
czy coś w ogóle poprawiłem?
wizu
16.02.2009
if( get_user_flags(player) & FLAGA) set_user_health(player, 130) set_user_armor(player, 130) set_user_gravity (player, 0.9 ) set_user_maxspeed (player, 500.0 )
Chciał chyba wszystko zmienić danemu graczowi, trzeba wziąć to w klamerki.
if( get_user_flags(player) & FLAGA) { set_user_health(player, 130) set_user_armor(player, 130) set_user_gravity (player, 0.9 ) set_user_maxspeed (player, 500.0 ) }
Miczu
16.02.2009
public team_assign(id) { new id=read_data(1)
to powinno wywalic blad przy kompilowaniu - zerknij jeszcze raz do m_girl
[ Dodano: 16-02-2009, 19:47 ]
if( get_user_flags(id) & FLAGA) new name[33]; get_user_name(0, name, 32); client_print(0,print_chat,"Odszedl VIP - %s", name);
if( get_user_flags(0) & FLAGA) new name[33]; get_user_name(0, name, 32); client_print(0,print_chat,"Przyszedl VIP - %s", name);to tez klamerka zlapac razem
zGraferz
16.02.2009
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #define PLUGIN "Mega VIP" #define VERSION "1.0.0" #define AUTHOR "Grafer" #define FLAGA ADMIN_LEVEL_G public plugin_init() { register_plugin("VIP test", "1.0", "Grafer") register_event("HLTV", "nowa_runda", "a", "1=0", "2=0") register_event("TeamInfo","team_assign","a") } public plugin_precache() { precache_model("models/player/vipct/vipct.mdl") precache_model("models/player/viptt/viptt.mdl") } public client_putinserver(id) { if( get_user_flags(0) & FLAGA) { new name[33]; get_user_name(0, name, 32); client_print(0,print_chat,"Przyszedl VIP - %s", name); } } public nowa_runda() { if( get_user_flags(player) & FLAGA) { set_user_health(player, 130) set_user_armor(player, 130) set_user_gravity (player, 0.9 ) set_user_maxspeed (player, 500.0 ) } } public team_assign() { new id=read_data(1) if(get_user_flags(id) & ADMIN_LEVEL_G) { new team[32] read_data(2,team,31) if(equal("TERRORIST",team)) cs_set_user_model(id,"viptt") if(equal("CT",team)) cs_set_user_model(id,"vipct") } } public client_disconnect(id) { if( get_user_flags(id) & FLAGA) { new name[33]; get_user_name(0, name, 32); client_print(0,print_chat,"Odszedl VIP - %s", name); } }
o to chodziło?
darkman
16.02.2009
zGraferz
16.02.2009
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #define PLUGIN "Mega VIP" #define VERSION "1.0.0" #define AUTHOR "Grafer" #define FLAGA ADMIN_LEVEL_G public plugin_init() { register_plugin("VIP test", "1.0", "Grafer") register_event("HLTV", "nowa_runda", "a", "1=0", "2=0") register_event("TeamInfo","team_assign","a") } public plugin_precache() { precache_model("models/player/vipct/vipct.mdl") precache_model("models/player/viptt/viptt.mdl") } public client_putinserver(id) { if( get_user_flags(id) & FLAGA) { new name[33]; get_user_name(1, name, 32); client_print(0,print_chat,"Przyszedl VIP - %s", name); } } public nowa_runda() { if( get_user_flags(1) & FLAGA) { set_user_health(1, 130) set_user_armor(1, 130) set_user_gravity (1, 0.9 ) set_user_maxspeed (1, 500.0 ) } } public team_assign() { new id=read_data(1) if(get_user_flags(id) & ADMIN_LEVEL_G) { new team[32] read_data(2,team,31) if(equal("TERRORIST",team)) cs_set_user_model(id,"viptt") if(equal("CT",team)) cs_set_user_model(id,"vipct") } } public client_disconnect(id) { if( get_user_flags(1) & FLAGA) { new name[33]; get_user_name(1, name, 32); client_print(0,print_chat,"Odszedl VIP - %s", name); } }
Miczu
16.02.2009
_ _/ __/
Skopales teraz sprawe z id.
Kazdy gracz ma wlasne nr. indexu/id od 1 do 32
Skoro dajesz 1 to tylko dla 1 gracza bedzie dzialac i nie koniecznie ma on flage
zGraferz
16.02.2009
#include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #define PLUGIN "Mega VIP" #define VERSION "1.0.0" #define AUTHOR "Grafer" #define FLAGA ADMIN_LEVEL_G public plugin_init() { register_plugin("VIP test", "1.0", "Grafer") register_event("HLTV", "nowa_runda", "a", "1=0", "2=0") register_event("TeamInfo","team_assign","a") } public plugin_precache() { precache_model("models/player/vipct/vipct.mdl") precache_model("models/player/viptt/viptt.mdl") } public client_putinserver(id) { if( get_user_flags(id) & FLAGA) { new name[33]; get_user_name(id, name, 32); client_print(0,print_chat,"Przyszedl VIP - %s", name); } } public nowa_runda() { if( get_user_flags(id) & FLAGA) { set_user_health(id, 130) set_user_armor(id, 130) set_user_gravity (id, 0.9 ) set_user_maxspeed (id, 500.0 ) } } public team_assign() { new id=read_data(1) if(get_user_flags(id) & ADMIN_LEVEL_G) { new team[32] read_data(2,team,31) if(equal("TERRORIST",team)) cs_set_user_model(id,"viptt") if(equal("CT",team)) cs_set_user_model(id,"vipct") } } public client_disconnect(id) { if( get_user_flags(id) & FLAGA) { new name[33]; get_user_name(id, name, 32); client_print(0,print_chat,"Odszedl VIP - %s", name); } }
Miczu
16.02.2009
public nowa_runda() { if( get_user_flags(id) & FLAGA) { set_user_health(id, 130) set_user_armor(id, 130) set_user_gravity (id, 0.9 ) set_user_maxspeed (id, 500.0 ) } }
Tu nie masz zdefiniowanego id, co gorsze event nie przekazuje informacji o id, wiec pozostaje ci nadal dosc sporo mozliwosci by to uzupelnic