Skocz do zawartości

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.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
Inny

Nie działa XPMod

Inny

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
4 odpowiedzi w tym temacie

#1 Towobars

    Nowy

  • Nowy

Reputacja: -1
Nowy

  • Postów:3
  • Imię:Bartosz
  • Lokalizacja:Katowice
Offline

Napisano 02.12.2012 16:12

Witam,

A wiec postanowilem napisac sobie plugin, a mianowicie XPMod. Ale gdy wgrałem go na serwer (HNS), to w ogóle nie działa. Do plugins.ini takze dodalem. Zobaczicie Kod:
#define MAXCLASSES 1
new PlayerXP[33],PlayerLevel[33],PlayerClass[33]
new XP_kill, XP_hs, SaveXP
new g_vault
new const CLASSES[MAXCLASSES][] = {
"None"
}
new const LEVELS[20] =
{
0,
100,
200,
350,
400,
800,
1400,
2200,
3500,
5000,
7000,
9500,
12000,
15000,
19000,
24000,
30000,
40000,
52000,
80000
}
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)

register_event("DeathMsg","eDeath","a")

SaveXP = register_cvar("SaveXP","1")

XP_kill=register_cvar("Xp_per_kill","12")

XP_hs=register_cvar("XP_hs_bonus","5")

g_vault = nvault_open("animod")

register_clcmd("say /xp", "ShowHud")
register_clcmd("say_team /xp", "ShowHud")
}
public eDeath( )
{
new attacker = read_data( 1 );
new ivictim = read_data ( 2 );
new headshot = read_data( 3 )

if(PlayerClass[attacker] == 0)

  return PLUGIN_CONTINUE
 
new clip, ammo, weapon = get_user_weapon(attacker,clip,ammo);

PlayerXP[attacker] += get_pcvar_num(XP_kill)

if(headshot)

PlayerXP[attacker] += get_pcvar_num(XP_hs)
while(PlayerXP[attacker] >= LEVELS[PlayerLevel[attacker]])
if(PlayerClass[attacker] == 0) return PLUGIN_CONTINUE
  client_print(attacker, print_chat, "[JumpOne.pl] Gratulacje! Zdobyles poziom: %i %s!", PlayerLevel[attacker],CLASSES[PlayerClass[attacker]])
  PlayerLevel[attacker] +=1
ShowHud(attacker);
SaveData(attacker);
}
 
public ShowHud(id) {
set_hudmessage(255, 0, 0, 0.75, 0.01, 0, 6.0, 15.0);
show_hudmessage(id, "Poziom: %i^nDoswiadczenie: %i^nPostac: %s",PlayerLevel[id],PlayerXP[id],CLASSES[PlayerClass[id]])
}
public client_connect(id)
{
if(get_pcvar_num(SaveXP) == 1)
{
  LoadData(id)
}
}
public client_disconnect(id)
{
if(get_pcvar_num(SaveXP) ==1)
{
  SaveData(id)
}
}
public SaveData(id) {
	    if(g_vault == INVALID_HANDLE)
			    return;
	    new AuthID[32]; get_user_authid(id, AuthID, 31);
	    new vaultkey[64], vaultdata[128];
	    format(vaultkey, 63, "%s-Mod", AuthID);
	    format(vaultdata, 127, "%i %i", PlayerXP[id], PlayerLevel[id]);
	    nvault_set(g_vault, vaultkey, vaultdata);
}
public LoadData(id) {
	    if(g_vault == INVALID_HANDLE)
			    return;
	    new AuthID[32]; get_user_authid(id, AuthID, 31);
	    new vaultkey[64], vaultdata[128];
	    format(vaultkey, 63, "%s-Mod", AuthID);
	    if(nvault_get(g_vault, vaultkey, vaultdata, 127)) {
			    new playerxp[11], playerlevel[11];
			    parse(vaultdata, playerxp, 10, playerlevel, 10);
			    PlayerXP[id] = str_to_num(playerxp);
			    PlayerLevel[id] = str_to_num(playerlevel);
	    }
}


Proszę o pomoc.

Użytkownik Towobars edytował ten post 02.12.2012 16:12

  • +
  • -
  • 0

#2 TheRock

    Wszechobecny

  • Użytkownik

Reputacja: 233
Wszechwidzący

  • Postów:402
  • GG:
  • Imię:Łukasz
  • Lokalizacja:Zloczew
Offline

Napisano 02.12.2012 16:29

A "include to gdzie" ?

#include <amxmodx>
#include <amxmisc>
#include <nvault>

  • +
  • -
  • 1

#3 Towobars

    Nowy

  • Autor tematu
  • Nowy

Reputacja: -1
Nowy

  • Postów:3
  • Imię:Bartosz
  • Lokalizacja:Katowice
Offline

Napisano 02.12.2012 16:32

Jest wszystko ;P, tylko obcialem kawalek z góry

Użytkownik Towobars edytował ten post 02.12.2012 16:35

  • +
  • -
  • 0

#4 Gość_21977_*

  • Gość

Reputacja: 0

Offline

Napisano 03.12.2012 21:31

Automatyczna wiadomość


Ten temat został przeniesiony z forum

Scripting AMXXProblemy

do

ModyInne modyProblemy

#5 waluss

    Nowy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:7
Offline

Napisano 05.12.2012 20:05

Prawdopodobnie problem tkwi w zapisie/odczytywaniu w nvault. Porównaj oryginalny kod zapisu/odczytu z Twoim i sprawdź co jest nie tak ;)
Wydaje mi się, że dodanie tej linii powinno pomóc.
format(vaultkey, 63, "%s-Mod", AuthID);
<- po tej linii dodaj tą poniżej.
format(vaultdata,127,"%i#%i#",PlayerXP[id],PlayerLevel[id])

Użytkownik waluss edytował ten post 05.12.2012 20:08

  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: Inny

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych