←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Perk od levela / poziomu

  • +
  • -
Barto_12_SAS - zdjęcie Barto_12_SAS 25.07.2012

Witam - czy da się ustawić , że konkretne itemy mogą być użyte / zostaną otrzymane dopiero od konkretnego zdobytego poziomu daną klasą ? Jeżeli tak to w jaki sposób ?
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 25.07.2012

Resetuj item w cod_item_enabled gdy gracz nie ma poziomu (cod_get_user_level(id))
Odpowiedz

  • +
  • -
Pan PrO - zdjęcie Pan PrO 25.07.2012

cod_perk_enabled(id)
{
if(cod_get_user_level(id) >= X) // Gdzie x to od jakiego lvlu
else return COD_STOP;

// kod
return COD_CONTINUE;
}

Użytkownik Pan PrO edytował ten post 25.07.2012 12:17
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 25.07.2012

może inaczej....


public cod_perk_enabled(id)
{
if(cod_get_user_level(id) >= X)   // Gdzie x to od jakiego lvl
{
  cod_set_user_perk(id,0 0,0); // resetuje mu perk.
  client_print(id,print_chat,"Do tego perku jest wymagany LVL")
  return COD_STOP;
}

//ma item itp
return COD_CONTINUE;
}
Odpowiedz

  • +
  • -
HaDeS From HELL - zdjęcie HaDeS From HELL 25.07.2012

@CheQ nie lepiej ustawić mu jakiś inny perk zamiast go całkowicie usuwać ?
public cod_perk_enabled(id)
{
if(cod_get_user_level(id) > 50)
{
  UstawPerk(id, -1, -1, 1);
  client_print(id,print_chat,"Poprzedni perk został zamieniony, poniewaz nie posiadasz 50 poziomu.")
  return COD_STOP;
}

//dalszy kod
return COD_CONTINUE;
}

Użytkownik Mr.Szybcioor edytował ten post 25.07.2012 14:01
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 25.07.2012

@mr.Szybcior - można ale skoro robi to randomem to teoretycznie przez całą mape będzie mu losować Tylko itemy z ogarniczenami od lvla co może scrashować serwer. Usunięcie było moim zdaniem Lepszym rozwiązaniem ale każdy pomysł jest dobry ;)

a i jeszcze

UstawPerk(id, -1, -1, 1);

To nie jest codowy natyw - wywali chyba błąd. trzeba zmienić na cod_set_user_perk
Odpowiedz

  • +
  • -
HaDeS From HELL - zdjęcie HaDeS From HELL 25.07.2012

no tak na szybko kopiowałem to z silnika coda, tak żeby dać przykład jak to może zrobić.

ale fakt to małych namysłach myślę, że twój pomysł bd lepszy ;]
Odpowiedz

  • +
  • -
Barto_12_SAS - zdjęcie Barto_12_SAS 26.07.2012

Czyli CheQ'a pomysł najlepszy ? Znaczy najstabilniejszy dla serwera ?
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 26.07.2012

możesz też zmodyfikować natyw rejestracji perku aby była w nim informacja od jakiego lvla ma być - mojego sposobu nie sprawdzałem - ze wstępnych informacji mysle że będzie ok.
Odpowiedz

  • +
  • -
Barto_12_SAS - zdjęcie Barto_12_SAS 26.07.2012

Ok , dzięki wielkie
A tak z offtop , abynie zaśmiecać forum : można jakoś przerobić PTB aby dodtakowo sprawdzał poziomy klas na codzie ( aby zapobiec grze kilku z wyższym lvl na początkujących ) ?
Odpowiedz

  • +
  • -
Barto_12_SAS - zdjęcie Barto_12_SAS 27.07.2012

Wynik kompilacji według sposobu CheQ


Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

Error: Expected token: ",", but found "-integer value-" on line 26
Warning: Expression has no effect on line 26
Warning: Expression has no effect on line 26
Error: Expected token: ";", but found ")" on line 26
Error: Invalid expression, assumed zero on line 26
Error: Too many error messages on one line on line 26

Compilation aborted.
4 Errors.
Could not locate output file C:\Documents and Settings\Komputer.PAJEWSKI-B23A3A\Pulpit\fantasy mod\itemy\po\adept.amx (compile failed).
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 27.07.2012

pokaż cały perk.
Odpowiedz

  • +
  • -
Barto_12_SAS - zdjęcie Barto_12_SAS 28.07.2012

/* Plugin generated by AMXX-Studio */



#include <amxmodx>

#include <codmod>



new const perk_name[] = "Pasywnosc Wiezy";

new const perk_desc[] = "Dostajesz 1250 Zdrowia oraz tracisz 95 kondycji";





public plugin_init()

{

register_plugin(perk_name, "1.0", "QTM_Peyote");



cod_register_perk(perk_name, perk_desc);

}

public cod_perk_enabled(id)

{

if(cod_get_user_level(id) >= 100) // Gdzie x to od jakiego lvl

{

cod_set_user_perk(id,0 0,0); // resetuje mu perk.

client_print(id,print_chat,"Do tego perku jest wymagany 100 LVL")

return COD_STOP;

}

cod_set_user_bonus_trim(id, cod_get_user_trim(id, 0, 0)-95);

cod_set_user_bonus_health(id, cod_get_user_health(id, 0, 0)+1250);

return COD_CONTINUE;

}







public cod_perk_disabled(id)

{

cod_set_user_bonus_trim(id, cod_get_user_trim(id, 0, 0)+95);

cod_set_user_bonus_health(id, cod_get_user_health(id, 0, 0)-1250);

}
Odpowiedz

  • +
  • -
HaDeS From HELL - zdjęcie HaDeS From HELL 28.07.2012

heh zamień
cod_set_user_perk(id,0 0,0); // resetuje mu perk.

na
cod_set_user_perk(id,0,0,0); // resetuje mu perk.

Użytkownik Mr.Szybcioor edytował ten post 28.07.2012 22:01
Odpowiedz

Kronzu - zdjęcie Kronzu 29.07.2012

Taki mały przecinek, a tyle błędów...
Odpowiedz

  • +
  • -
Barto_12_SAS - zdjęcie Barto_12_SAS 29.07.2012

Ok , sprawdzę idam wam znać , a jeśli ktos mógłby powiedzieć za co odpowiada te ostatnie 0 w nawiasach ?
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 29.07.2012

http://amxx.pl/dokum...d_set_user_perk

0 ostatnie nie pokazuje informacji o ustawionym perku
Odpowiedz

  • +
  • -
Barto_12_SAS - zdjęcie Barto_12_SAS 30.07.2012

Niesetety przedmioty się pojawiają , nie są kasowane - jedynie ich moc nie jest skuteczna

EDIT: Zamiast "," postawiłem "." :^D

Zaraz naprawię i zdam wam raport
Użytkownik SAS edytował ten post 30.07.2012 07:03
Odpowiedz

  • +
  • -
TomekLex - zdjęcie TomekLex 30.07.2012

Witam przepraszam że tu pisze ale nigdzie nie moge znajść pomocy czy cheq lub jakiś pro's pomóc mi ?
http://amxx.pl/topic...u-klas-cod-mod/
I dzięki wam za ten temat bo juz wiem jak zrobic klase od levela :D
Odpowiedz

  • +
  • -
Barto_12_SAS - zdjęcie Barto_12_SAS 01.08.2012

Ten wariant jest tak "w pół niedziałający" - perki się pojawiaja ale ich moce nie działają :/
Odpowiedz