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

Sprawdzienie :D


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

#1 loleN

    Profesjonalista

  • Oczekujący

Reputacja: 27
Życzliwy

  • Postów:157
  • Steam:steam
  • Lokalizacja:Częstochowa
Offline

Napisano 29.03.2009 21:43

Proszę was o sprawdzenie oraz jak można o zoptymalizowanie

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Options welcomed"
#define VERSION "1.2"
#define AUTHOR "loleN~"
#define HUD set_hudmessage (200, 150, 0, 0.02, 0.24, 0, 6.0, 12.0)

new onoff
new adminhide

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_dictionary("welcomed.txt")
	onoff = register_cvar("amx_welcomed","1")
	adminhide = register_cvar("amx_adminhide","0")
	
}
public client_connect(id)
{
   switch(is_user_admin(id))
    {
        case 0:
        {
	if(!get_pcvar_num(onoff)){
	new name [32]
	get_user_name(id, name, 31)
	HUD
	show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_CONNECT", name)
	}
        }
        case 1:
        {
	if(!get_pcvar_num(onoff)){
		if(get_pcvar_num(adminhide)==0)
		{
		new name [32]
		get_user_name(id, name, 31)
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_ADMIN_CONNECT", name)
		}
		if(get_pcvar_num(adminhide)==1)
		{
		new name [32]
		get_user_name(id, name, 31)
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_CONNECT", name)
		}
		}
       }
    }
}

public client_putinserver(id)
{
   switch(is_user_admin(id))
    {
        case 0:
        {
	if(!get_pcvar_num(onoff)){
	new name [32]
	get_user_name(id, name, 31)
	HUD
	show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_GAME", name)

	}
        }
        case 1:
        {
	if(!get_pcvar_num(onoff)){
		if(get_pcvar_num(adminhide)==0)
		{
		new name [32]
		get_user_name(id, name, 31)
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_ADMIN_GAME", name)
		}
		if(get_pcvar_num(adminhide)==1)
		{
		new name [32]
		get_user_name(id, name, 31)
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_GAME", name)
		}
		}
       }
    }
}
public client_disconnect(id)
{
   switch(is_user_admin(id))
    {
        case 0:
        {
	if(!get_pcvar_num(onoff)){
	new name [32]
	get_user_name(id, name, 31)
	HUD
	show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_DISCONNECT", name)
	}
	}
        case 1:
        {
	if(!get_pcvar_num(onoff)){
		if(get_pcvar_num(adminhide)==0)
		{
		new name [32]
		get_user_name(id, name, 31)
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_ADMIN_DISCONNECT", name)
		}
		if(get_pcvar_num(adminhide)==1)
		{
		new name [32]
		get_user_name(id, name, 31)
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_DISCONNECT", name)
		}
		}
       }
    }
}

Wiem ze bd w **** błędów kiedyś ludź xD musi zacząć....
  • +
  • -
  • 0

#2 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 29.03.2009 21:45

blee...

Uzyj
if(is_user_admin(id))
{
...
}
else
{
...
}

masz tylko 2 mozliwosci, true/false wiec nie kombunij z swichem xD
  • +
  • -
  • 0

#3 loleN

    Profesjonalista

  • Autor tematu
  • Oczekujący

Reputacja: 27
Życzliwy

  • Postów:157
  • Steam:steam
  • Lokalizacja:Częstochowa
Offline

Napisano 29.03.2009 21:50

a tak to jeszcze coś?
  • +
  • -
  • 0

#4 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 29.03.2009 21:52

Jest tez zasada z matematyki, ze jak cos sie powtarza to mozna wyciagnac przed nawias -> np get user name masz w kazdej klamrze...
  • +
  • -
  • 0

#5 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 29.03.2009 21:57

Coś jak to

Załączone pliki


  • +
  • -
  • 0

#6 loleN

    Profesjonalista

  • Autor tematu
  • Oczekujący

Reputacja: 27
Życzliwy

  • Postów:157
  • Steam:steam
  • Lokalizacja:Częstochowa
Offline

Napisano 29.03.2009 21:57

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Options welcomed"
#define VERSION "1.2"
#define AUTHOR "loleN~"
#define HUD set_hudmessage (200, 150, 0, 0.02, 0.24, 0, 6.0, 12.0)

new onoff
new adminhide

public plugin_init() {
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_dictionary("welcomed.txt")
	onoff = register_cvar("amx_welcomed","1")
	adminhide = register_cvar("amx_adminhide","0")
	
}
public client_connect(id)
{
if(is_user_admin(id))
{ 
	if(!get_pcvar_num(onoff)){
		new name [32]
		get_user_name(id, name, 31)
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_CONNECT", name)
	}
}
else
{ 
	if(!get_pcvar_num(onoff)){
		new name [32]
		get_user_name(id, name, 31)
		if(get_pcvar_num(adminhide)==0)
		{
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_ADMIN_CONNECT", name)
		}
		if(get_pcvar_num(adminhide)==1)
		{
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_CONNECT", name)
		}
	}
       }
 }


public client_putinserver(id)
{
new name [32]
get_user_name(id, name, 31)
if(is_user_admin(id))
{ 
	if(!get_pcvar_num(onoff)){
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_GAME", name)
		}
}
else
{ 
	if(!get_pcvar_num(onoff)){
		if(get_pcvar_num(adminhide)==0)
		{
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_ADMIN_GAME", name)
		}
		if(get_pcvar_num(adminhide)==1)
		{
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_GAME", name)
		}
		}
       }
}

public client_disconnect(id)
{
new name [32]
get_user_name(id, name, 31)
if(is_user_admin(id))
{ 
	if(!get_pcvar_num(onoff)){
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_DISCONNECT", name)
		}
}
else
{ 
	if(!get_pcvar_num(onoff)){
		if(get_pcvar_num(adminhide)==0)
		{
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_ADMIN_DISCONNECT", name)
		}
		if(get_pcvar_num(adminhide)==1)
		{
		HUD
		show_hudmessage(0, "%L",LANG_PLAYER,"MSG_PLAYER_DISCONNECT", name)
		}
		}
       }
 }

Coś jeszcze :]

@Edit

Dzięki to mam już kolejną wersje :D
  • +
  • -
  • 0

#7 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 29.03.2009 21:59

mała poprawka w moim kodzie
  • +
  • -
  • 0

#8 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 29.03.2009 22:01

R3X, teraz to sie popisujesz =_='
  • +
  • -
  • 0

#9 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 29.03.2009 22:04

Zbyt wiele podobnych linijek, by nie kusiło umieścić wszystkiego w jednej funkcji.

[ Dodano: 29-03-2009, 23:05 ]
I zredukowałem ilość linijek o 50%
  • +
  • -
  • 0

#10 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 29.03.2009 22:15

R3X

#define HUD set_hudmessage (200, 150, 0, 0.02, 0.24, 0, 6.0, 12.0)

Uzywasz tylko w 1 miejscu kodu wiec zajmuje tylko miejsce, enum bys uproscil do 0,1,2 i tylko to bys dostala pare lini

isAdmin=(is_user_admin(who)==1);
to samo co
isAdmin=is_user_admin(who)?

Poza tym bys uzyl id jak chodzi o gracza, jakies ogolne nazewnictwo obowiazuje =_='
  • +
  • -
  • 0

#11 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 30.03.2009 13:30

O hudzie myślałem, ale tak samo mogą przeszkadzać
#define PLUGIN "Options welcomed"
skoro używam tylko raz
zaletą jest to, że są na samym początku kodu.
isAdmin=is_user_admin(who)
tag mismatch

id czy who co za różnica, wiadomo co zawiera informacja, którą przechowuje
  • +
  • -
  • 0

#12 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 30.03.2009 13:48

isAdmin zdefiniowales bodaj jako bool i kompilator sie czepia.
  • +
  • -
  • 0

#13 R3X

    Godlike

  • Przyjaciel

Reputacja: 2 987
Godlike

  • Postów:4 248
  • Lokalizacja:Nie
Offline

Napisano 30.03.2009 14:01

no i dlatego dodałem ==1 :D
  • +
  • -
  • 0




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

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