Skocz do zawartości

  • Zaloguj korzystając z Facebooka Zaloguj korzystając z Twittera Zaloguj przez Steam Zaloguj poprzez Google      Logowanie »   
  • Rejestracja

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
Zombie Plague 4.3

[ROZWIĄZANE] T-Virus blokada na innych modach

zombie plague 4.3

  • Zamknięty Temat jest zamknięty
4 odpowiedzi w tym temacie

#1 Shaxu

    Zaawansowany

  • Użytkownik

Reputacja: 19
Początkujący

  • Postów:82
  • Imię:Adam
  • Lokalizacja:Olsztyn
Offline

Napisano 27.03.2014 19:16

Witam Serdecznie.

 

Mam prośbę czy ktoś potrafiłby ustawić T-Virusa aby nie można było go kupić na modach takich jak swarm / plague / nemesis oraz przed pojawieniem się pierwszego zombiego ( lub też innego modu )...

Za udzieloną pomoc będę bardzo wdzięczny.

#include <amxmodx>
#include <zombieplague>
 
#define PLUGIN "[ZP] Extra Item: T-Virus"
#define VERSION "1.0"
#define AUTHOR "fezh"
 
new g_virus, name[32]
 
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
g_virus = zp_register_extra_item("T-Virus", 30, ZP_TEAM_HUMAN)
}
 
public zp_extra_item_selected(id, itemid)
{
if (itemid == g_virus)
{
get_user_name(id, name, 31)
set_hudmessage(0, 255, 0, -0.05, -0.45, 1, 0.0, 5.0, 1.0, 1.0, -1)
show_hudmessage(0, "%s has infected himself with the T-Virus!", name)
set_task(5.0, "set_zombie", id)
}
}
 
public set_zombie(id)
{
get_user_name(id, name, 31)
server_cmd("amx_show_activity 0")
server_cmd("zp_zombie %s", name)
server_cmd("amx_show_activity 2")
}

  • +
  • -
  • 0

#2 sNH.

    Czy MisieQ ukradł ciasteczko?

  • Power User

Reputacja: 297
Wszechwidzący

  • Postów:1070
  • Steam:steam
  • Imię:Bartek
  • Lokalizacja:Ełk
Offline

Napisano 28.03.2014 20:33

Daj warunek sprawdzający:

w set_zombie

 

Spoiler
//Kod pisany ręcznie Gwyn :D
 
Coś takiego, dawno się nie bawiłem więc daję wskazówki. Odnośnie sprawdzania trybów pewnie masz w bibliotekach
 
Tak jak sharku napisał w notatce. Jeżeli chodzi o || -> i, jeżeli ma być tylko i wyłącznie dla wszystkich tych trybów to daj &&

sharkowy (28.03.2014 20:39):
Samą wiadomością nie zablokuje tego ^^ return PLUGIN_HANDLED, czy jak to tam w zombie modzie jest.

  • +
  • -
  • 1

#3 Drago36

    Profesjonalista - if you know what i mean

  • Power User

Reputacja: 560
Wszechwiedzący

  • Postów:707
  • GG:
  • Imię:Mów mi D.ave
  • Lokalizacja:Polska
Offline

Napisano 28.03.2014 23:00

 

Daj warunek sprawdzający:

w set_zombie

 

Spoiler
//Kod pisany ręcznie Gwyn :D
 
Coś takiego, dawno się nie bawiłem więc daję wskazówki. Odnośnie sprawdzania trybów pewnie masz w bibliotekach
 
Tak jak sharku napisał w notatce. Jeżeli chodzi o || -> i, jeżeli ma być tylko i wyłącznie dla wszystkich tych trybów to daj &&

Nie może dać w set_zombie, ponieważ gracz który kupi extra item podczas swarmu, zostaną mu pożarte ammo packi, a czynność się nie wykona.

Należy wykonać  w  publiku zp_extra_item_selected po warunku if (itemid == g_virus).

 

Więc zamiast:

public zp_extra_item_selected(id, itemid)
{
if (itemid == g_virus)
{
get_user_name(id, name, 31)
set_hudmessage(0, 255, 0, -0.05, -0.45, 1, 0.0, 5.0, 1.0, 1.0, -1)
show_hudmessage(0, "%s has infected himself with the T-Virus!", name)
set_task(5.0, "set_zombie", id)
}
}

Daj:

public zp_extra_item_selected(id, itemid)
{
if (itemid == g_virus)
{
if(zp_is_swarm_round() || zp_is_plague_round() || zp_is_nemesis_round())
{
client_print(id, print_chat, "Nie mozesz tego kupic, na tym trybie!!");
return ZP_PLUGIN_HANDLED;
}
get_user_name(id, name, 31)
set_hudmessage(0, 255, 0, -0.05, -0.45, 1, 0.0, 5.0, 1.0, 1.0, -1)
show_hudmessage(0, "%s has infected himself with the T-Virus!", name)
set_task(5.0, "set_zombie", id)
}
}

  • +
  • -
  • 2

#4 Shaxu

    Zaawansowany

  • Autor tematu
  • Użytkownik

Reputacja: 19
Początkujący

  • Postów:82
  • Imię:Adam
  • Lokalizacja:Olsztyn
Offline

Napisano 31.03.2014 22:27

Wszystko ładnie działa ale podczas kompilacji wyskakuje jeden errorek ^^

zp_extra_virus.sma(37) : warning 209: function "zp_extra_item_selected" should return a value

Mogę go zignorować? Czy sugerowałbyś go fixnąć? Ale tak bardzo dziękuję za udzieloną pomóc daję plusika.


Użytkownik Shaxu edytował ten post 31.03.2014 22:28

  • +
  • -
  • 0

#5 Drago36

    Profesjonalista - if you know what i mean

  • Power User

Reputacja: 560
Wszechwiedzący

  • Postów:707
  • GG:
  • Imię:Mów mi D.ave
  • Lokalizacja:Polska
Offline

Napisano 03.04.2014 08:20

Nie, nie. Jakbyś go zignorował to by nie działało.

Poprawiony public:

public zp_extra_item_selected(id, itemid)
{
if (itemid == g_virus)
{
if(zp_is_swarm_round() || zp_is_plague_round() || zp_is_nemesis_round())
{
client_print(id, print_chat, "Nie mozesz tego kupic, na tym trybie!!");
return ZP_PLUGIN_HANDLED;
}
get_user_name(id, name, 31)
set_hudmessage(0, 255, 0, -0.05, -0.45, 1, 0.0, 5.0, 1.0, 1.0, -1)
show_hudmessage(0, "%s has infected himself with the T-Virus!", name)
set_task(5.0, "set_zombie", id)
}
return PLUGIN_CONTINUE;
}

  • +
  • -
  • 0





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

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

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