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
CoD Nowy

Regeneracja HPCo 5s dostajesz x HP

cod nowy

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

#1 Na 5tyk

    Godlike

  • Użytkownik

Reputacja: 430
Wszechobecny

  • Postów:1 712
  • GG:
  • Imię:Patryk
  • Lokalizacja:PL
Offline

Napisano 01.03.2012 16:06

Witam. Kilka osób mnie prosiło abym to dodał więc dodaje :)

Pod:
#include <nvault>

Dodajemy:
#include <fun>


Pod:
#define AUTHOR "QTM_Peyote"

Dodaj:
#define TASK_REGENERACJA 736 


Pod:
Float:redukcja_obrazen_gracza[33]

Dodaj:
Float:wartosc_regeneracji_gracza[33];


Pod:
kondycja_gracza[33]

Dodaj:
regeneracja_gracza[33]


Pod:
bonusowa_kondycja_gracza[33]

Dodaj:
bonusowa_regeneracja_gracza[33]


Pod:
wytrzymalosc_klas[MAX_ILOSC_KLAS+1]

Dodaj:
regeneracja_klas[MAX_ILOSC_KLAS+1]


W public ZastosujAtrybuty(id) dodaj na końcu:
set_task(5.0, "Regeneracja", id+TASK_REGENERACJA);


Na końcu *.sma dodaj:
public Regeneracja(id)
{
id -= TASK_REGENERACJA;

if(!is_user_connected(id))
return PLUGIN_CONTINUE;


if(is_user_alive(id))
{

set_task(5.0, "Regeneracja", id+TASK_REGENERACJA);

new cur_health = get_user_health(id);
new max_health = (PobierzZdrowie(id, 1, 1, 1))+100;
new new_health;

wartosc_regeneracji_gracza[id] = float(PobierzRegeneracje(id, 1, 1, 1))/10
//floatround(wartosc_regeneracji_gracza[id], floatround_floor)

if(cur_health+(floatround(wartosc_regeneracji_gracza[id], floatround_floor)) < max_health)
{
new_health = cur_health+floatround(wartosc_regeneracji_gracza[id], floatround_floor);
}
else
{
new_health = max_health;
}
set_user_health(id, new_health);
}
return PLUGIN_CONTINUE;
}


W public UsunUmiejetnosci(id) wpisz na końcu:
regeneracja_gracza[id] = 0;
bonusowa_niewidzialnosc_gracza[id] = 0;


W public ResetujPunkty(id) przed:
if(punkty_gracza[id])
PrzydzielPunkty(id);

Dodaj:
regeneracja_gracza[id] = 0;


W ZapiszDane po:
#%i

Dodaj:
#%i

Oraz Po:
kondycja_gracza[id]

Dodaj:
regeneracja_gracza[id]



W public WczytajDane(id, klasa)
w tej linijce :
 new danegracza[6][32];

6 zwiększamy o 1 czyli będzie :
 new danegracza[7][32];


tu:
parse(vaultdata, danegracza[0], 31, danegracza[1], 31, danegracza[2], 31, danegracza[3], 31, danegracza[4], 31, danegracza[5], 31);

dopisujemy :
danegracza[6], 31


czyli będzie tak:

parse(vaultdata, danegracza[0], 31, danegracza[1], 31, danegracza[2], 31, danegracza[3], 31, danegracza[4], 31, danegracza[5], 31, danegracza[6], 31));



pod:
kondycja_gracza[id] = str_to_num(danegracza[5]);

Dodaj:
regeneracja_gracza[id] = str_to_num(danegracza[6]);



Cały public Wczytaj dane i zapisz będzie wyglądał tak :
public ZapiszDane(id)
{
if(!klasa_gracza[id])
return PLUGIN_CONTINUE;

new vaultkey[128],vaultdata[256], identyfikator[64];
format(vaultdata, charsmax(vaultdata),"#%i#%i#%i#%i#%i#%i#%i", doswiadczenie_gracza[id], poziom_gracza[id], inteligencja_gracza[id], zdrowie_gracza[id], wytrzymalosc_gracza[id], kondycja_gracza[id], regeneracja_gracza[id]);

new typ_zapisu = get_pcvar_num(cvar_typ_zapisu);

switch(typ_zapisu)
{
case 1: copy(identyfikator, charsmax(identyfikator), nazwa_gracza[id]);
case 2: get_user_authid(id, identyfikator, charsmax(identyfikator));
case 3: get_user_ip(id, identyfikator, charsmax(identyfikator));
}

format(vaultkey, charsmax(vaultkey),"%s-%s-%i-cod", identyfikator, nazwy_klas[klasa_gracza[id]], typ_zapisu);
nvault_set(vault,vaultkey,vaultdata);

return PLUGIN_CONTINUE;
}
public WczytajDane(id, klasa)
{
new vaultkey[128],vaultdata[256], identyfikator[64];

new typ_zapisu = get_pcvar_num(cvar_typ_zapisu);

switch(typ_zapisu)
{
case 1: copy(identyfikator, charsmax(identyfikator), nazwa_gracza[id]);
case 2: get_user_authid(id, identyfikator, charsmax(identyfikator));
case 3: get_user_ip(id, identyfikator, charsmax(identyfikator));
}

format(vaultkey, charsmax(vaultkey),"%s-%s-%i-cod", identyfikator, nazwy_klas[klasa], typ_zapisu);
if(!nvault_get(vault,vaultkey,vaultdata,255)) // Jezeli nie ma danych gracza sprawdza stary zapis.
{
format(vaultkey, charsmax(vaultkey), "%s-%i-cod", nazwa_gracza[id], klasa);
nvault_get(vault,vaultkey,vaultdata,255);
}
replace_all(vaultdata, 255, "#", " ");

new danegracza[7][32];

parse(vaultdata, danegracza[0], 31, danegracza[1], 31, danegracza[2], 31, danegracza[3], 31, danegracza[4], 31, danegracza[5], 31, danegracza[6], 31);

doswiadczenie_gracza[id] = str_to_num(danegracza[0]);
poziom_gracza[id] = str_to_num(danegracza[1])>0?str_to_num(danegracza[1]):1;
inteligencja_gracza[id] = str_to_num(danegracza[2]);
zdrowie_gracza[id] = str_to_num(danegracza[3]);
wytrzymalosc_gracza[id] = str_to_num(danegracza[4]);
kondycja_gracza[id] = str_to_num(danegracza[5]);
regeneracja_gracza[id] = str_to_num(danegracza[6]);
punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id]-regeneracja_gracza[id];

return PLUGIN_CONTINUE;
}



W public SprawdzPoziom(id):
W:
while(doswiadczenie_gracza[id] >= PobierzDoswiadczeniePoziomu(poziom_gracza[id]) && poziom_gracza[id] < limit_poziomu)

Po:
-kondycja_gracza[id]

Dodaj:
-regeneracja_gracza[id]

Oraz:
W
else if(stracil_poziom)

Po:
-kondycja_gracza[id]

Dodaj:
-regeneracja_gracza[id]


Na koniec *.sma:
public UstawBonusowaRegeneracje(id, wartosc)
bonusowa_regeneracja_gracza[id] = wartosc;

public PrzydzielRegeneracje(id, wartosc)
{
new max_statystyka = get_pcvar_num(cvar_limit_poziomu)/2;
wartosc = min(min(punkty_gracza[id], wartosc), max_statystyka-regeneracja_gracza[id]);

punkty_gracza[id] -= wartosc;
regeneracja_gracza[id] += wartosc;
}

public PobierzRegeneracje(id, regeneracja_zdobyta, regeneracja_klasy, regeneracja_bonusowa)
{
new regeneracja;

if(regeneracja_zdobyta)
regeneracja += regeneracja_gracza[id];
if(regeneracja_bonusowa)
regeneracja += bonusowa_regeneracja_gracza[id];
if(regeneracja_klasy)
regeneracja += regeneracja_klas[klasa_gracza[id]];

return regeneracja;
}

public PobierzRegeneracjeKlasy(klasa)
{
if(klasa <= ilosc_klas)
return regeneracja_klas[klasa];
return -1;
}


To się rozpisałem :D No i do menu dodajecie Regenerację według innej statystyki, bo mi się nie chce przerabiać na noramlnego CODa, bo mam edytowane menu :)
  • +
  • -
  • 3

#2 ric0

    Wszechwiedzący

  • Power User

Reputacja: 176
Profesjonalista

  • Postów:558
  • Imię:Łukasz
  • Lokalizacja:Ostrołęka
Offline

Napisano 01.03.2012 16:27

Zapomniałeś dodać że kod
public Regeneracja
nie jest twój :) tylko innego użytkownika tego forum nie pamiętam kto to był ..

@@ Za ilość dodawanego HP odpowiada ta linijka w public Regenerajca:
	    wartosc_regeneracji_gracza[id] = float(PobierzRegeneracje(id, 1, 1, 1))/10 // 10 zmieniacie na swoją liczbę


przykładowo jest dzielone przez 10 to przy 100pkt danych w tą statystykę będzie dodawało 10hp co 5 sekund.

A czas zmieniamy w tych linijkach :
set_task(5.0, "Regeneracja", id+TASK_REGENERACJA);


5.0 < zamieniacie na swoją liczbę sekund. np : 10.0 , 9.0
  • +
  • -
  • 2

To co piszę się nie liczy...

 


#3 A może sma?

    Godlike

  • Power User

Reputacja: 546
Wszechwiedzący

  • Postów:1 464
  • Steam:steam
  • Imię:Tomasz
  • Lokalizacja:Polska
Offline

Napisano 01.03.2012 17:24

Mój ;D
  • +
  • -
  • 1

#4 heroes

    Zaawansowany

  • Użytkownik

Reputacja: 21
Życzliwy

  • Postów:118
  • Imię:xxx
  • Lokalizacja:xxx
Offline

Napisano 01.03.2012 17:36

Pod:
kondycja_gracza[33]
Dodaj:
regeneracja_gracza[33]


wezmę tylko ten kawałek kodu.
org jest tak
kondycja_gracza[33];

to zamieniamy na
kondycja_gracza[33],

i po tym dodajemy
regeneracja_gracza[33];


to tylko kawałek na wzór żeby nie płakali potem

//
jeszcze jedno
 new danegracza[7][32];

parse(vaultdata, danegracza[0], 31, danegracza[1], 31, danegracza[2], 31, danegracza[3], 31, danegracza[4], 31, danegracza[5], 31, danegracza[6], 31);

doswiadczenie_gracza[id] = str_to_num(danegracza[0]);
poziom_gracza[id] = str_to_num(danegracza[1])>0?str_to_num(danegracza[1]):1;
inteligencja_gracza[id] = str_to_num(danegracza[2]);
zdrowie_gracza[id] = str_to_num(danegracza[3]);
wytrzymalosc_gracza[id] = str_to_num(danegracza[4]);
kondycja_gracza[id] = str_to_num(danegracza[5]);
regeneracja_gracza[id] = str_to_num(danegracza[6]);
punkty_gracza[id] = (poziom_gracza[id]-1)*2-inteligencja_gracza[id]-zdrowie_gracza[id]-wytrzymalosc_gracza[id]-kondycja_gracza[id]-regeneracja_gracza[id];

return PLUGIN_CONTINUE;
}

Użytkownik heroes edytował ten post 01.03.2012 17:55

  • +
  • -
  • 0
Dołączona grafika

Dołączona grafika

#5 Kamil17

    Ogar :)

  • Zbanowany

Reputacja: 67
Pomocny

  • Postów:449
  • Steam:steam
  • Imię:Patryk
  • Lokalizacja:Płońsk
Offline

Napisano 01.03.2012 17:48

Ja ciebie prosiłem , Bardzo ci dziękuję za tę statystykę :) zaraz zabieram się do robienia // Ma ktoś może gotowy silnik z tą regeneracją?

#6 ToRRent

    Czempion

  • Power User

Reputacja: 229
Wszechwidzący

  • Postów:861
  • Imię:Łukasz
  • Lokalizacja:Wrocław
Offline

Napisano 01.03.2012 18:16

Będzie, lecz myśle że znacznie lepiej by wyglądał bajer z coda że po obrażeniach odczekujemy i potem szybko regeneruje się hp
  • +
  • -
  • 0

#7 ric0

    Wszechwiedzący

  • Power User

Reputacja: 176
Profesjonalista

  • Postów:558
  • Imię:Łukasz
  • Lokalizacja:Ostrołęka
Offline

Napisano 01.03.2012 18:21

U nas na serwerze(jesli sie nie myle) wlasnie tak to dziala regeneracja zostaje uruchomiona wtedy gdy zostana zabrane pierwsze obrazenia.
  • +
  • -
  • 0

To co piszę się nie liczy...

 


#8 Kamil17

    Ogar :)

  • Zbanowany

Reputacja: 67
Pomocny

  • Postów:449
  • Steam:steam
  • Imię:Patryk
  • Lokalizacja:Płońsk
Offline

Napisano 01.03.2012 18:34

Wiem że ten temat nie jest do poprawy Silnika coda lecz proszę o pomoc
QTM_CodMod.sma(67) : error 010: invalid function or declaration
QTM_CodMod.sma(492) : error 017: undefined symbol "bonusowa_niewidzialnosc_gracza"
QTM_CodMod.sma(492) : warning 215: expression has no effect
QTM_CodMod.sma(492) : error 001: expected token: ";", but found "]"
QTM_CodMod.sma(492) : error 029: invalid expression, assumed zero
QTM_CodMod.sma(492) : fatal error 107: too many error messages on one line


Proszę o ustawienie max 30 pkt i co 10 s regeneruje się 30 hp lub (15 HP czyli 0,5 pkt na daną statystykę czyli w tym przypadku regeneracje)

Bardzo proszę o pomoc

Załączone pliki



#9 heroes

    Zaawansowany

  • Użytkownik

Reputacja: 21
Życzliwy

  • Postów:118
  • Imię:xxx
  • Lokalizacja:xxx
Offline

Napisano 01.03.2012 18:47

patrzyłeś na mój post wyżej ? bo z logów widzę, że nie a po pierwsze po co Ci to?
bonusowa_niewidzialnosc_gracza[id] = 0;

wywal to .. temat strasznie nie dopracowany.. ja prawie wszystko poprawiłem lecz czekam na dobry

public Regeneracja(id)
  • +
  • -
  • 0
Dołączona grafika

Dołączona grafika

#10 HaDeS From HELL

    CoD MoD Fanatyk

  • Użytkownik

Reputacja: 163
Profesjonalista

  • Postów:453
  • Lokalizacja:Szczecin
Offline

Napisano 01.03.2012 18:48

A jest tu łatke, że jak bijemy swojego to nie dodaje nam HP :> ?
  • +
  • -
  • 0

#11 Kamil17

    Ogar :)

  • Zbanowany

Reputacja: 67
Pomocny

  • Postów:449
  • Steam:steam
  • Imię:Patryk
  • Lokalizacja:Płońsk
Offline

Napisano 01.03.2012 19:01

@ to da ktoś gotowe sma czy ktoś mi poprawi silnik coda mojego ?

#12 heroes

    Zaawansowany

  • Użytkownik

Reputacja: 21
Życzliwy

  • Postów:118
  • Imię:xxx
  • Lokalizacja:xxx
Offline

Napisano 01.03.2012 19:05

@ to da ktoś gotowe sma czy ktoś mi poprawi silnik coda mojego ?

daj mi dobry publicRegeneracja(id)
to zrobie ;d

Użytkownik heroes edytował ten post 01.03.2012 19:06

  • +
  • -
  • 0
Dołączona grafika

Dołączona grafika

#13 ric0

    Wszechwiedzący

  • Power User

Reputacja: 176
Profesjonalista

  • Postów:558
  • Imię:Łukasz
  • Lokalizacja:Ostrołęka
Offline

Napisano 01.03.2012 19:25

Do autora.
W pierwszym poście dodaj że trzeba dodać moduł :
#include <fun>

--------------
	new max_statystyka = limit_reg;


NIe każdy ma limit statystyk. zamień to na :
	new max_statystyka = get_pcvar_num(cvar_limit_poziomu)/2;


Chyba na tyle na razie.

Gotowe Sma niech ktoś przetestuje.

Załączone pliki


Użytkownik Rozum ? edytował ten post 01.03.2012 19:27

  • +
  • -
  • 2

To co piszę się nie liczy...

 


#14 Kamil17

    Ogar :)

  • Zbanowany

Reputacja: 67
Pomocny

  • Postów:449
  • Steam:steam
  • Imię:Patryk
  • Lokalizacja:Płońsk
Offline

Napisano 01.03.2012 19:43

Do autora.
W pierwszym poście dodaj że trzeba dodać moduł :

#include <fun>

--------------
	new max_statystyka = limit_reg;


NIe każdy ma limit statystyk. zamień to na :
	new max_statystyka = get_pcvar_num(cvar_limit_poziomu)/2;


Chyba na tyle na razie.

Gotowe Sma niech ktoś przetestuje.

Bardzo dziękuję za SMA :)

#15 Na 5tyk

    Godlike

  • Autor tematu
  • Użytkownik

Reputacja: 430
Wszechobecny

  • Postów:1 712
  • GG:
  • Imię:Patryk
  • Lokalizacja:PL
Offline

Napisano 01.03.2012 19:53

Dobra poprawiłem 1 post i dodałem załącznik od Rozuma.
  • +
  • -
  • 0

#16 Kamil17

    Ogar :)

  • Zbanowany

Reputacja: 67
Pomocny

  • Postów:449
  • Steam:steam
  • Imię:Patryk
  • Lokalizacja:Płońsk
Offline

Napisano 01.03.2012 20:05

Dobra poprawiłem 1 post i dodałem załącznik od Rozuma.

Załącznik wywala błędy
L 03/01/2012 - 20:01:00: String formatted incorrectly - parameter 11 (total 10)
L 03/01/2012 - 20:01:00: [AMXX] Run time error 25 (plugin "QTM_CodMod.amxx") - debug not enabled!
L 03/01/2012 - 20:01:00: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes).


#17 Na 5tyk

    Godlike

  • Autor tematu
  • Użytkownik

Reputacja: 430
Wszechobecny

  • Postów:1 712
  • GG:
  • Imię:Patryk
  • Lokalizacja:PL
Offline

Napisano 01.03.2012 20:10

Może debug po QTM_CodMod.amxx?
  • +
  • -
  • 0

#18 Kamil17

    Ogar :)

  • Zbanowany

Reputacja: 67
Pomocny

  • Postów:449
  • Steam:steam
  • Imię:Patryk
  • Lokalizacja:Płońsk
Offline

Napisano 01.03.2012 20:13

dalej błędy
L 03/01/2012 - 20:09:56: String formatted incorrectly - parameter 11 (total 10)
L 03/01/2012 - 20:09:56: [AMXX] Displaying debug trace (plugin "QTM_CodMod.amxx")
L 03/01/2012 - 20:09:56: [AMXX] Run time error 25: parameter error
L 03/01/2012 - 20:09:56: [AMXX] [0] cod_reg_391780.sma::ZapiszDane (line 861)
L 03/01/2012 - 20:09:56: [AMXX] [1] cod_reg_391780.sma::SprawdzPoziom (line 973)
L 03/01/2012 - 20:09:56: [AMXX] [2] cod_reg_391780.sma::ObrazeniaPost (line 413)


#19 Na 5tyk

    Godlike

  • Autor tematu
  • Użytkownik

Reputacja: 430
Wszechobecny

  • Postów:1 712
  • GG:
  • Imię:Patryk
  • Lokalizacja:PL
Offline

Napisano 01.03.2012 20:16

Sprawdź ten

Załączone pliki


  • +
  • -
  • 1

#20 Kamil17

    Ogar :)

  • Zbanowany

Reputacja: 67
Pomocny

  • Postów:449
  • Steam:steam
  • Imię:Patryk
  • Lokalizacja:Płońsk
Offline

Napisano 01.03.2012 20:30

Nie sypie błędami możesz dodać go do 1 posta oraz zmienić nazwę na QTM_CodMod :)

Użytkownik Kamil17 edytował ten post 01.03.2012 20:31






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

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

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