W załączniku .sma do pluginu
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.
|
Wywala mi serwer po wgraniu pluginuHost_Error: WriteDest_Parm: not a client
#2
Napisano 12.03.2011 15:04
chyba wiem
Te 2 funkcje
public client_connect(id) { Wczytaj(id); set_task(1.0, "write_hud",_,_,_, "b") } public write_hud(id) { format(tpstring,1023,"Level: %i Exp: %i", iLvl[id], iExp[id]); message_begin(MSG_ONE,gmsgStatusText,{0,0,0}, id) write_byte(0) write_string(tpstring) message_end() }
zastąp tymi
public client_putinserver(id) { Wczytaj(id); set_task(1.0, "write_hud",id,_,_, "b") } public write_hud(id) { if(!is_user_connected(id)) return; format(tpstring,1023,"Level: %i Exp: %i", iLvl[id], iExp[id]); message_begin(MSG_ONE,gmsgStatusText,{0,0,0}, id) write_byte(0) write_string(tpstring) message_end() }
#3
Napisano 12.03.2011 15:14
Obecne .sma w załączniku
Po podłożeniu paki jest w konsoli spam
[CsStrefa] Dostales 233936 expa za podlozenie bomby
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales na kolejny poziom!
[CsStrefa] Gratulacje! Awansowales
Załączone pliki
Użytkownik LucKy_skiLL edytował ten post 12.03.2011 15:36
Oglądasz seriale typu: The Flash, Arrow, Daredevil, The Walking Dead? Jeśli tak, to zapraszam na mój kanał YouTube
#4
Napisano 12.03.2011 15:52
źle
doswiadczenie_za_bombe
dobrze
get_pcvar_num(doswiadczenie_za_bombe);
#5
Napisano 12.03.2011 15:56
[CsStrefa] Dostales 233936 expa za podlozenie bomb
Obecnie kod wygląda tak:
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <colorchat>
new const LEVELS[20] = {
200,
400,
600,
800,
1000,
1200,
1400,
1600,
1800,
2000,
2200,
2500,
2800,
3100,
3500,
4800,
5600,
6400,
7800,
8900
}
new iExp[33],iLvl[33];
new cKill,g_vault;
new tpstring[1024];
new gmsgStatusText;
new doswiadczenie_za_bombe;
new podkladajacy;
new rozbrajajacy;
public plugin_init()
{
register_plugin("EXP", "1.0", "Flyen & Harsay & Kruszynka");
register_event("DeathMsg", "EventSmierci", "a");
gmsgStatusText = get_user_msgid("StatusText")
set_task(1.0, "write_hud",_,_,_, "b")
g_vault = nvault_open("xp");
cKill = register_cvar("amx_exp_kill", "20");
doswiadczenie_za_bombe = register_cvar("amx_exp_bomb", "10")
register_logevent("BombaPodlozona", 3, "2=Planted_The_Bomb");
register_event("SendAudio", "BombaRozbrojona", "a", "2&%!MRAD_BOMBDEF");
register_event("BarTime", "RozbrajaBombe", "be", "1=10", "1=5")
}
public EventSmierci()
{
new iKiller = read_data(1);
new iVictim = read_data(2);
new gNumExp = get_pcvar_num(cKill);
new Kid[32],Vid[32];
get_user_name(iKiller, Kid, 31);
get_user_name(iVictim, Vid, 31);
if(get_user_team(iKiller) != get_user_team(iVictim))
{
iExp[iKiller] += gNumExp;
ColorChat(iKiller, GREEN, "[CsStrefa]^x01 Dostales^x04 %d^x01 expa za zabicie gracza^x04 %s",gNumExp, Vid);
}
SprawdzPoziom(iKiller);
Zapisz(iKiller);
}
public client_putinserver(id)
{
Wczytaj(id);
set_task(1.0, "write_hud",id,_,_, "b")
}
public client_disconnect(id)
{
Zapisz(id);
}
public Zapisz(id)
{
new NameID[32];
get_user_name(id,NameID,31);
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-Mod",NameID);
format(vaultdata,255,"%i#%i#",iExp[id], iLvl[id]);
nvault_set(g_vault,vaultkey,vaultdata);
return PLUGIN_CONTINUE;
}
public Wczytaj(id)
{
new NameID[32];
get_user_name(id,NameID,31);
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-Mod",NameID);
format(vaultdata,255,"%i#%i#",iExp[id], iLvl[id]);
nvault_get(g_vault,vaultkey,vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new PEXP[32], PLEV[32];
iExp[id] = str_to_num(PEXP);
iLvl[id] = str_to_num(PLEV);
parse(vaultdata, PEXP, 31, PLEV, 31);
return PLUGIN_CONTINUE;
}
public SprawdzPoziom(id)
{
while(iExp[id] >= LEVELS[iLvl[id]]){
ColorChat(id, GREEN, "[CsStrefa]^x01 Gratulacje! Awansowales na kolejny poziom!")
iLvl[id] += 1
}
Zapisz(id);
}
public write_hud(id)
{
if(!is_user_connected(id)) return;
format(tpstring,1023,"Level: %i/20 Exp: %i", iLvl[id], iExp[id]);
message_begin(MSG_ONE,gmsgStatusText,{0,0,0}, id)
write_byte(0)
write_string(tpstring)
message_end()
}
public RozbrajaBombe(id)
rozbrajajacy = id;
public BombaPodlozona()
{
new Players[32], playerCount, id;
get_players(Players, playerCount, "aeh", "TERRORIST");
if(get_playersnum() > 1)
{
iExp[podkladajacy] += get_pcvar_num(doswiadczenie_za_bombe);
for (new i=0; i<playerCount; i++)
{
if(id != podkladajacy)
{
iExp[id] += cKill;
ColorChat(id, GREEN, "[CsStrefa]^x01 Dostales^x04 %i^x01 expa za podlozenie bomby przez twoj team", cKill);
}
else
{
iExp[id] += get_pcvar_num(doswiadczenie_za_bombe);
ColorChat(id, GREEN, "[CsStrefa]^x01 Dostales^x04 %i^x01 expa za podlozenie bomby", doswiadczenie_za_bombe);
}
SprawdzPoziom(id);
}
}
}
public BombaRozbrojona()
{
new Players[32], playerCount, id;
get_players(Players, playerCount, "aeh", "CT");
iExp[rozbrajajacy] += get_pcvar_num(doswiadczenie_za_bombe);
for (new i=0; i<playerCount; i++)
{
if(id != rozbrajajacy)
{
iExp[id] += cKill;
ColorChat(id, GREEN, "[CsStrefa]^x01 Dostales^x04 %i^x01 expa za rozbrojenie bomby przez twoj team", cKill);
}
else
{
iExp[id] += get_pcvar_num(doswiadczenie_za_bombe);
ColorChat(id, GREEN, "[CsStrefa]^x01 Dostales^x04 %i^x01 expa za rozbrojenie bomby",doswiadczenie_za_bombe);
}
SprawdzPoziom(id);
}
}
Użytkownik LucKy_skiLL edytował ten post 12.03.2011 16:23
Oglądasz seriale typu: The Flash, Arrow, Daredevil, The Walking Dead? Jeśli tak, to zapraszam na mój kanał YouTube
#6
Napisano 12.03.2011 16:43
wszędzie zmieniasz
doswiadczenie_za_bombe
na
get_pcvar_num(doswiadczenie_za_bombe)
oprócz
new doswiadczenie_za_bombe i doswiadczenie_za_bombe = register_cvar("amx_exp_bomb", "10")
#7
Napisano 12.03.2011 16:52
Welcome to the AMX Mod X 1.8.1-300 Compiler. Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team xp.sma(150) : error 001: expected token: ",", but found ";" xp.sma(173) : error 001: expected token: ",", but found ";" 2 Errors. Could not locate output file xp.amxx (compile failed).
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#include <colorchat>
new const LEVELS[20] = {
200,
400,
600,
800,
1000,
1200,
1400,
1600,
1800,
2000,
2200,
2500,
2800,
3100,
3500,
4800,
5600,
6400,
7800,
8900
}
new iExp[33],iLvl[33];
new cKill,g_vault;
new tpstring[1024];
new gmsgStatusText;
new doswiadczenie_za_bombe;
new podkladajacy;
new rozbrajajacy;
public plugin_init()
{
register_plugin("EXP", "1.0", "Flyen & Harsay & Kruszynka");
register_event("DeathMsg", "EventSmierci", "a");
gmsgStatusText = get_user_msgid("StatusText")
set_task(1.0, "write_hud",_,_,_, "b")
g_vault = nvault_open("xp");
cKill = register_cvar("amx_exp_kill", "20");
doswiadczenie_za_bombe = register_cvar("amx_exp_bomb", "10")
register_logevent("BombaPodlozona", 3, "2=Planted_The_Bomb");
register_event("SendAudio", "BombaRozbrojona", "a", "2&%!MRAD_BOMBDEF");
register_event("BarTime", "RozbrajaBombe", "be", "1=10", "1=5")
}
public EventSmierci()
{
new iKiller = read_data(1);
new iVictim = read_data(2);
new gNumExp = get_pcvar_num(cKill);
new Kid[32],Vid[32];
get_user_name(iKiller, Kid, 31);
get_user_name(iVictim, Vid, 31);
if(get_user_team(iKiller) != get_user_team(iVictim))
{
iExp[iKiller] += gNumExp;
ColorChat(iKiller, GREEN, "[CsStrefa]^x01 Dostales^x04 %d^x01 expa za zabicie gracza^x04 %s",gNumExp, Vid);
}
SprawdzPoziom(iKiller);
Zapisz(iKiller);
}
public client_putinserver(id)
{
Wczytaj(id);
set_task(1.0, "write_hud",id,_,_, "b")
}
public client_disconnect(id)
{
Zapisz(id);
}
public Zapisz(id)
{
new NameID[32];
get_user_name(id,NameID,31);
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-Mod",NameID);
format(vaultdata,255,"%i#%i#",iExp[id], iLvl[id]);
nvault_set(g_vault,vaultkey,vaultdata);
return PLUGIN_CONTINUE;
}
public Wczytaj(id)
{
new NameID[32];
get_user_name(id,NameID,31);
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-Mod",NameID);
format(vaultdata,255,"%i#%i#",iExp[id], iLvl[id]);
nvault_get(g_vault,vaultkey,vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new PEXP[32], PLEV[32];
iExp[id] = str_to_num(PEXP);
iLvl[id] = str_to_num(PLEV);
parse(vaultdata, PEXP, 31, PLEV, 31);
return PLUGIN_CONTINUE;
}
public SprawdzPoziom(id)
{
while(iExp[id] >= LEVELS[iLvl[id]]){
ColorChat(id, GREEN, "[CsStrefa]^x01 Gratulacje! Awansowales na kolejny poziom!")
iLvl[id] += 1
}
Zapisz(id);
}
public write_hud(id)
{
if(!is_user_connected(id)) return;
format(tpstring,1023,"Level: %i/20 Exp: %i", iLvl[id], iExp[id]);
message_begin(MSG_ONE,gmsgStatusText,{0,0,0}, id)
write_byte(0)
write_string(tpstring)
message_end()
}
public RozbrajaBombe(id)
rozbrajajacy = id;
public BombaPodlozona()
{
new Players[32], playerCount, id;
get_players(Players, playerCount, "aeh", "TERRORIST");
if(get_playersnum() > 1)
{
iExp[podkladajacy] += get_pcvar_num(doswiadczenie_za_bombe);
for (new i=0; i<playerCount; i++)
{
if(id != podkladajacy)
{
iExp[id] += cKill;
ColorChat(id, GREEN, "[CsStrefa]^x01 Dostales^x04 %i^x01 expa za podlozenie bomby przez twoj team", cKill);
}
else
{
iExp[id] += get_pcvar_num(doswiadczenie_za_bombe);
ColorChat(id, GREEN, "[CsStrefa]^x01 Dostales^x04 %i^x01 expa za podlozenie bomby",get_pcvar_num(doswiadczenie_za_bombe);
}
SprawdzPoziom(id);
}
}
}
public BombaRozbrojona()
{
new Players[32], playerCount, id;
get_players(Players, playerCount, "aeh", "CT");
iExp[rozbrajajacy] += get_pcvar_num(doswiadczenie_za_bombe);
for (new i=0; i<playerCount; i++)
{
if(id != rozbrajajacy)
{
iExp[id] += cKill;
ColorChat(id, GREEN, "[CsStrefa]^x01 Dostales^x04 %i^x01 expa za rozbrojenie bomby przez twoj team", cKill);
}
else
{
iExp[id] += get_pcvar_num(doswiadczenie_za_bombe);
ColorChat(id, GREEN, "[CsStrefa]^x01 Dostales^x04 %i^x01 expa za rozbrojenie bomby",get_pcvar_num(doswiadczenie_za_bombe);
}
SprawdzPoziom(id);
}
}
Oglądasz seriale typu: The Flash, Arrow, Daredevil, The Walking Dead? Jeśli tak, to zapraszam na mój kanał YouTube
#8
Napisano 12.03.2011 17:00
#9
Napisano 12.03.2011 17:45
Ale gdy Ct pake rozbroji to mam:
[CsStrefa] Dostales 10 expa za podlozenie bomby [CsStrefa] Dostales 233864 expa za rozbrojenie bomby przez twoj team [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales na kolejny poziom! [CsStrefa] Gratulacje! Awansowales n
I expa nie dostaje, na dodatek exp sie nie zapisuje
Oglądasz seriale typu: The Flash, Arrow, Daredevil, The Walking Dead? Jeśli tak, to zapraszam na mój kanał YouTube
#10
Napisano 12.03.2011 19:31
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych