←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Pierwszy plugin

  • +
  • -
verman's Photo verman 13.11.2014

Witam! Postanowiłem że chciałbym nauczyć się pisać pluginy. Plugin ma na celu wyświetlić informacje w grze ze bomba jest podkładana lub rozbrajana.

 

cvar

bomb_msg_style: 0 - wyświetla się zwykła informacja na czacie, 1 - wyświetla się kolorowa informacja na czacie, 2 - wyświetla się informacja na środku ekranu

 

Chciałem zrobić tak, że jeżeli wartość będzie inna niż 0-2 to informacja nie zostanie wyświetlona. Bardzo proszę o sprawdzeniu pluginu pod względem kodu. Wygląda to tak:

 

#include <amxmodx>

#include <amxmisc>

#include <ColorChat>

 

#define PLUGIN "New Plugin"

#define AUTHOR "Unknown"

#define VERSION "1.0"

 

public plugin_init()

{

register_plugin(PLUGIN, VERSION, AUTHOR)

register_cvar("bomb_msg_style", "0");

}

 

public bomb_planting()

{

if(get_cvar_num("bomb_msg_style") == 0)

{

client_print(0, print_chat, "*** Bomb is being planted ***");

return PLUGIN_HANDLED;

}

 

if(get_cvar_num("bomb_msg_style") == 1)

{

ColorChat(0, GREEN, "*** ^x01Bomb is being planted ^x04***");

return PLUGIN_HANDLED;

}

 

if(get_cvar_num("bomb_msg_style") == 2)

{

client_print(0, print_center, "*** Bomb is being planted ***");

return PLUGIN_HANDLED;

}

 

else

{

return PLUGIN_HANDLED;

}

 

return PLUGIN_HANDLED

}

 

public bomb_defusing()

{

if(get_cvar_num("bomb_msg_style") == 0)

{

client_print(0, print_chat, "*** Bomb is being defused ***");

return PLUGIN_HANDLED;

}
 
if(get_cvar_num("bomb_msg_style") == 1)
{
ColorChat(0, GREEN, "*** ^x01Bomb is being defused ^x04***");
return PLUGIN_HANDLED;
}
 
if(get_cvar_num("bomb_msg_style") == 2)
{
client_print(0, print_center, "*** Bomb is being defused ***");
return PLUGIN_HANDLED;
}
 
else
{
return PLUGIN_HANDLED;
}
 
return PLUGIN_HANDLED
}

Edited by verman, 13.11.2014 19:10.
Quote

  • +
  • -
Dziobak?'s Photo Dziobak? 13.11.2014

 
else
{
return PLUGIN_HANDLED;
}

Po co to ?

Quote

  • +
  • -
verman's Photo verman 13.11.2014

Żeby po wpisaniu innych wartości w cvar niż 0-2 plugin nie wyświetlał informacji. No chyba że plugin wie że nic ma nie pokazywać?

Quote

  • +
  • -
Wielkie Jol's Photo Wielkie Jol 13.11.2014

Co się stanie w tej sytuacji, jeżeli zmienna ma inna wartosc niz od 1 do 3?
if(cos == 1) {
cos1
}
else if(cos == 2) {
cos2
}
else if(cos == 3) {
cos3
}
 
Kiedy te Twoje funkcje w tym pluginie się wykonają?
 
Poczytaj o instrukcji warunkowej case.
Quote