←  Poradniki, Łatki oraz Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

CoD Nowy
Dodawanie tarczy klasie/perkowi.

0x.'s Photo 0x. 11.04.2012

Do moderatorów:
Spoiler

Cześć, czytałem forum i widziałem że wiele osób się z tym główkuje, gdyż gdy piszą cod_set_user_shield(id, 1) tarcza nie zostaje przydzielona, jest to trochę dziwne, bo jak wiemy wartość 0 to fałsz, a każda inna większa to prawda, czyli w tym przypadku false i true, właśnie użyłem sobie takiego czegoś i udało mi się przydzielić tarcze klasie bez edytowania silnika, kYfySzY!

Przykładowy perk:
#include <amxmodx>
#include <amxmisc>
#include <codmod>
public plugin_init() {
register_plugin("PLUGIN", "VERSION", "0x");
cod_register_perk("Tarcza SWAT", "Otrzymujesz tarcze.");}
public cod_perk_enabled(id) {cod_set_user_shield(id, true);}
public cod_perk_disabled(id){cod_set_user_shield(id, false);}


Przykładowa klasa:
#include <amxmodx>
#include <amxmisc>
#include <codmod>
new bool:ma_klase[33];
public plugin_init() {
register_plugin("PLUGIN", "VERSION", "0x");
cod_register_class("SWAT", "Dostajesz Tarcze", 1<<CSW_DEAGLE, 0, 0, 0, 0);}
public cod_class_enabled(id){ma_klase[id] = true;cod_set_user_shield(id, true);}
public cod_class_disabled(id){ma_klase[id] = false;cod_set_user_shield(id, false);}


Okej, jedziemy, to krótka operacja
  • Do public cod_class_enabled(id) bądź cod_perk_enabled(id) dodajemy:
cod_set_user_shield(id, true);

  • Do public cod_class_disabled(id) bądź cod_perk_disabled(id) dodajemy:
cod_set_user_shield(id, false);


Gotowe.
Quote

  • +
  • -
sebul's Photo sebul 13.04.2012

Trochę dziwne, że to nie działa wpisując tam jedynkę, bo public jest napisany tak
public UstawTarcze(id, wartosc) {
if((gracz_ma_tarcze[id] = (wartosc > 0)))
fm_give_item(id, "weapon_shield");
}

A "(wartosc > 0)" powinno raczej przyjmować tylko wartości boolowskie. Wydaje mi się, że można to naprawić też na inny sposób, czyli edytując ten public
public UstawTarcze(id, wartosc) {
if((gracz_ma_tarcze[id] = bool:wartosc))
fm_give_item(id, "weapon_shield");
}

Tak powinno być chyba dobrze.
Quote

Kronzu's Photo Kronzu 13.04.2012

Już to było chyba. Gdzieś widziałem.
Quote

0x.'s Photo 0x. 13.04.2012

Też działa, ale jak już napisałem to nie ma po co usuwać, bo działa dobrze. :P
Quote