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

Jak zrobić 10 Poziomow + BonusyKażdy poziom daje bonus życia i więcej obrażeń.


  • Zamknięty Temat jest zamknięty
Brak odpowiedzi do tego tematu

#1 Blood Angel

    Wszechwiedzący

  • Zbanowany

Reputacja: 130
Zaawansowany

  • Postów:540
  • Steam:steam
  • Lokalizacja:Dom
Offline

Napisano 01.01.2011 22:50

Witam

Moje pytanie brzmi. Jak zrobić by było 10 poziomów.
1 poziom - 0/10 doświadczenia
2 poziom - 10/30 doświadczenia
3 poziom - 30/60 doświadczenia
4 poziom - 60/100 doświadczenia
5 poziom - 100/150 doświadczenia
6 poziom - 150/210 doświadczenia
7 poziom - 210/280 doświadczenia
8 poziom - 280/350 doświadczenia
9 poziom - 350/430 doświadczenia
10 poziom - 430/500 doświadczenia

1 Poziom - +500HP i +20 obrażeń z każdej broni
2 Poziom - +500HP i +50 obrażeń z każdej broni
3 Poziom - +1000HP i +70 obrażeń z każdej broni
4 Poziom - +1500HP i +100 obrażeń z każdej broni
5 Poziom - +2000HP i +120 obrażeń z każdej broni
6 Poziom - +2500HP i +150 obrażeń z każdej broni
7 Poziom - +3000HP i +170 obrażeń z każdej broni
8 Poziom - +3500HP i +200 obrażeń z każdej broni
9 Poziom - +4000HP i +220 obrażeń z każdej broni
10 Poziom - +4500HP i +250 obrażeń z każdej broni

Za zabicie 2 doświadczenia. Za zabicie 2 poziomu 4 doświadczenia za 3 poziomu 6 za 4 poziomu 8 i tak co +2.

Chciał bym żeby to było w Hud. Lewy środek.
Poziom: X/X
Doświadczenie: X/X
Zycie: X
Obrazenia: +X


Te obrażenia nie muszą być.

Zapisywanie na Nick.

Jeśli to coś mocnego i trzeba zapłaty to proszę pisać PW lub GG: 11664261 (rzadko siedzę) lub STEAM: dbz_goku123 (mam steam 4 lata więc nie patrzeć na nick)

Zrobiłem tyle:
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <engine>
#include <hamsandwich>
#include <nvault>
#include <ColorChat>

#define PLUGIN "PvP Mod"
#define VERSION "0.0.1"
#define AUTHOR "oeN."

#define OFFSET_PRIMARYWEAPON 116
#define ZADANIE_POKAZ_INFORMACJE 672
#define MAXLVL 500

new SyncHudObj;
new SyncHudObj3;

new g_vault;

new podkladajacy;
new rozbrajajacy;

new doswiadczenia_za_zabojstwo;
new doswiadczenie_za_bombe;

new nazwa_gracza[33][64];
new poziom_gracza[33] = 1;
new doswiadczenie_gracza[33];

new const doswiadczenie_poziomu[] = {0, 10, 30, 60, 100, 150, 210, 280, 350, 430, 500}

public plugin_init()
{
g_vault = nvault_open("PvPMod");

RegisterHam(Ham_Spawn, "player", "Player_Spawn_Post", 1)

register_logevent("PoczatekRundy", 2, "1=Round_Start");
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");

register_forward(FM_PlayerPreThink, "PlayerPreThink")
register_forward(FM_UpdateClientData, "UpdateClientData_Post", 1)
register_event("HLTV", "Nowa_Runda", "a", "1=0", "2=0")

register_cvar("pvp_killxp", "2");
register_cvar("pvp_bombxp", "5");

doswiadczenia_za_zabojstwo = get_cvar_num("pvp_killxp");
doswiadczenie_za_bombe = get_cvar_num("pvp_bombxp");
}

public Player_Spawn_Post( id )
{
if( is_user_alive(id) )

ColorChat(0, GREEN, "^x04~[Hit4u] ^x01PvP Mod^x04 --WLACZONY--.");
{
if( cs_get_user_team(id) == CS_TEAM_CT )
{
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
give_item(id, "weapon_m4a1")
cs_set_user_bpammo(id, CSW_M4A1, 90)
give_item(id, "weapon_awp")
cs_set_user_bpammo(id, CSW_AWP, 30)
set_user_health(id, 10000)
}

if( cs_get_user_team(id) == CS_TEAM_T )
{
give_item(id, "weapon_deagle")
cs_set_user_bpammo(id, CSW_DEAGLE, 35)
give_item(id, "weapon_ak47")
cs_set_user_bpammo(id, CSW_AK47, 90)
give_item(id, "weapon_awp")
cs_set_user_bpammo(id, CSW_AWP, 30)
set_user_health(id, 10000)
}
}
}

public client_connect(id)
{
//resetuje umiejetnosci
poziom_gracza[id] = 0;
doswiadczenie_gracza[id] = 0;

get_user_name(id, nazwa_gracza[id], 63);

remove_task(id+ZADANIE_POKAZ_INFORMACJE);

set_task(3.0, "PokazInformacje", id+ZADANIE_POKAZ_INFORMACJE);
}

public client_disconnect(id)
{
remove_task(id+ZADANIE_POKAZ_INFORMACJE);

ZapiszDane(id);
}


public RozbrajaBombe(id)
rozbrajajacy = id;

public BombaPodlozona()
{
new Players[32], playerCount, id;
get_players(Players, playerCount, "aeh", "TERRORIST");

if(get_playersnum() > 1)
{
doswiadczenie_gracza[podkladajacy] += doswiadczenie_za_bombe;
for (new i=0; i<playerCount; i++)
{
if(id != podkladajacy)
{
doswiadczenie_gracza[id] += doswiadczenia_za_zabojstwo;
client_print(id, print_chat, "[Hit4u] Dostales %i doswiadczenia za podlozenie bomby przez twoj team.", doswiadczenia_za_zabojstwo);
}
else
{
client_print(id, print_chat, "[Hit4u] Dostales %i doswiadczenia za podlozenie bomby.", doswiadczenie_za_bombe);
}
SprawdzPoziom(id);
}
}
}

public BombaRozbrojona()
{
new Players[32], playerCount, id;
get_players(Players, playerCount, "aeh", "CT");

doswiadczenie_gracza[rozbrajajacy] += doswiadczenie_za_bombe;
for (new i=0; i<playerCount; i++)
{
if(id != rozbrajajacy)
{
doswiadczenie_gracza[id]+= doswiadczenia_za_zabojstwo;
client_print(id, print_chat, "[Hit4u] Dostales %i doswiadczenia za rozbrojenie bomby przez twoj team.", doswiadczenia_za_zabojstwo);
}
else
client_print(id, print_chat, "[Hit4u] Dostales %i doswiadczenia za rozbrojenie bomby.",doswiadczenie_za_bombe);
SprawdzPoziom(id);
}
}

public ZapiszDane(id)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-%i-pvp", nazwa_gracza[id]);
format(vaultdata,255,"%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id]);
nvault_set(g_vault,vaultkey,vaultdata);
}

public WczytajDane(id)
{
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-%i-pvp", nazwa_gracza[id]);
format(vaultdata,255,"%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id]);
nvault_get(g_vault,vaultkey,vaultdata,255);

replace_all(vaultdata, 255, "#", " ");

new doswiadczeniegracza[32], poziomgracza[32];

parse(vaultdata, doswiadczeniegracza, 31, poziomgracza, 31);

doswiadczenie_gracza[id] = str_to_num(doswiadczeniegracza);
poziom_gracza[id] = str_to_num(poziomgracza)>0?str_to_num(poziomgracza):1;
}

public SprawdzPoziom(id)
{
if(poziom_gracza[id] < 10)
{
while(doswiadczenie_gracza[id] >= doswiadczenie_poziomu[poziom_gracza[id]])
{
poziom_gracza[id]++;
set_hudmessage(60, 200, 25, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.2, 2);
ShowSyncHudMsg(id, SyncHudObj3, "Zdobyles kolejny poziom! HP +%s Damage +%s");
}
}
ZapiszDane(id);
}

public PokazInformacje(id)
{
id -= ZADANIE_POKAZ_INFORMACJE;

set_task(0.1, "PokazInformacje", id+ZADANIE_POKAZ_INFORMACJE);

if(!is_user_alive(id))
{
new target = entity_get_int(id, EV_INT_iuser2);

if(target == 0)
return PLUGIN_CONTINUE;

set_hudmessage(255, 255, 0, -1.0, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
ShowSyncHudMsg(id, SyncHudObj, "Hit4u.com.pl^nPoziom : %i^nDoswiadczenie : %i / %i^nZycie : %i", doswiadczenie_poziomu[poziom_gracza[target]], poziom_gracza[target], doswiadczenie_gracza[target]);

return PLUGIN_CONTINUE;
}
}


Dodano 02 styczeń 2011 - 19:29:
Dalej nic?

Użytkownik Blood Angel edytował ten post 02.01.2011 11:47

Znany jako oeN.





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

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