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

Problem funkcje...


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

#1 silversurfer

    Profesjonalista

  • Użytkownik

Reputacja: 37
Życzliwy

  • Postów:209
  • Lokalizacja:Poznań
Offline

Napisano 02.11.2008 19:53

Zacząłem pisać poważniejsze pluginy, ale znowu coś nie idzie w kompilatorze internetowym.
Nie będę ukrywał sma jak to inni robią po to robie pluginy, aby pokazywać sma naprawiać błędy usprawniać kod ;]

Co nie działa?
/home/groups/amxmodx/tmp3/textsBCtNr.sma(59) : error 001: expected token: ",", but found "-identifier-"
/home/groups/amxmodx/tmp3/textsBCtNr.sma(59) : error 017: undefined symbol "E"
/home/groups/amxmodx/tmp3/textsBCtNr.sma(59) : error 029: invalid expression, assumed zero
/home/groups/amxmodx/tmp3/textsBCtNr.sma(59) : fatal error 107: too many error messages on one line


Wcześniej miałem około 20 błędów, które z powodzeniem naprawiłem... tutaj się domyślam o co chodzi, ale jednak źle działam...

/*
*  Okulary przeciwsloneczne v1.0b - poprawiono bug zwiazany z czasem oslepienia.
*                      
*                  ---------------
*                 by silversurfer       
*                  ---------------
*
*
*
* CVARY:
* amx_kupokulary < 1 / 0 > - domyślnie 1
* amx_koszt < koszt okularów > - domyślnie 3000
*
* KOMENDY:
* Uzyj czyli przycisk "e" wkłada okulary przeciwsłoneczne
*
*/

#include <amxmodx>
#include <fakemeta>

#define PLUGIN "Okulary przeciwsloneczne"
#define VERSION "1.0b"
#define AUTHOR "silversurfer"

#define OFFSET_CSMONEY 115
#define LINUX_EXTRAOFFSET 5
    
new Float:lastspam[33],Float:lastflash[33],kupokulary,koszt,SayText,ScreenFade,Money,Hudmes;

public plugin_init()
{
	register_plugin(PLUGIN,VERSION,AUTHOR);
	register_cvar(PLUGIN,AUTHOR,FCVAR_SERVER|FCVAR_UNLOGGED);
	
	kupokulary = register_cvar("amx_kupokulary","1",FCVAR_SERVER|FCVAR_UNLOGGED);
	koszt = register_cvar("amx_koszt","3000",FCVAR_SERVER|FCVAR_UNLOGGED);
	
	register_event("ScreenFade","sloneczne","be","4=255","5=255","6=255","7>199");
	register_forward(FM_CmdStart,"sloneczne_okulary",1);
	
	SayText = get_user_msgid("SayText");
	ScreenFade = get_user_msgid("ScreenFade");
	Money = get_user_msgid("Money");
	Hudmes = CreateHudSyncObj();
}

public sloneczne(const id)
{
	if (get_pcvar_num(kupokulary))
	{
		new Float:time;
		global_get(glb_time,time);
		lastflash[id] = time;
		if (!lastspam[id] || (time-lastspam[id]>400.0 && random_num(0,1)))
		{
			lastspam[id] = time;
			static message[100];
			formatex(message,99,"^4[NonSteam.pl] Nacisnij ^3+Uzyj - domyslnie klawisz "E"^4 zeby uzyc okulary tylko ^3$%d^4.",get_pcvar_num(koszt))
			message_begin(MSG_ONE,SayText,_,id);
			write_byte(id);
			write_string(message);
			message_end();
		}
	}
}

public sloneczne_okulary(const id)
{
	new Float:time;
	global_get(glb_time,time);
	if (get_pcvar_num(kupokulary) && (pev(id,pev_button) & IN_USE) && !(pev(id,pev_oldbuttons) & IN_USE) && time-lastflash[id]<5.0)
	{
		new user_money = get_pdata_int(id,OFFSET_CSMONEY,LINUX_EXTRAOFFSET);
		if (user_money<get_pcvar_num(koszt))
		{
			static message[100];
			formatex(message,99,"^4[NonSteam.pl] Nie masz kasy. Okulary przeciwsloneczne kosztuja ^3$%d^4.",get_pcvar_num(koszt))
			message_begin(MSG_ONE,SayText,_,id);
			write_byte(id);
			write_string(message);
			message_end();
		}
		else
		{
			message_begin(MSG_ONE,ScreenFade,_,id);
			write_short(1000);
			write_short(1000);
			write_short(0);
			write_byte(0);
			write_byte(150);
			write_byte(0);
			write_byte(70);
			message_end();

			user_money -= get_pcvar_num(koszt);
			set_pdata_int(id,OFFSET_CSMONEY,user_money,LINUX_EXTRAOFFSET);
			message_begin(MSG_ONE,Money,_,id);
			write_long(user_money);
			write_byte(1);
			message_end();

			static name[16];
			get_user_name(id,name,15);
			set_hudmessage(0, 240, 10, 0.70, 0.77, 0, 5.0, 5.0, 0.5, 0.15, -1);
			ShowSyncHudMsg(0, Hudmes, "%s posiada okulary przeciwsloneczne!",name);
		}
		lastflash[id] = time - 5.0;
	}
	return FMRES_IGNORED;
}

public client_disconnect(id)
	lastspam[id] = lastflash[id] = 0.0;


  • +
  • -
  • 0

#2 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 02.11.2008 20:40

Proste. Z linijki:
formatex(message,99,"^4[NonSteam.pl] Nacisnij ^3+Uzyj - domyslnie klawisz "E"^4 zeby uzyc okulary tylko ^3$%d^4.",get_pcvar_num(koszt))
usuń cudzysłowie lub zamień je na apostrofy:
formatex(message,99,"^4[NonSteam.pl] Nacisnij ^3+Uzyj - domyslnie klawisz 'E'^4 zeby uzyc okulary tylko ^3$%d^4.",get_pcvar_num(koszt))
A i wstawienie ^ przed nimi też chyba zadziała(ale tego to nie pamiętam).
formatex(message,99,"^4[NonSteam.pl] Nacisnij ^3+Uzyj - domyslnie klawisz ^"E^"^4 zeby uzyc okulary tylko ^3$%d^4.",get_pcvar_num(koszt))

  • +
  • -
  • 0

#3 silversurfer

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 37
Życzliwy

  • Postów:209
  • Lokalizacja:Poznań
Offline

Napisano 02.11.2008 21:34

/home/groups/amxmodx/tmp3/textilDsbS.sma(59) : error 029: invalid expression, assumed zero
Nie ważne wyrażenie ustalić na 0 mhm...
formatex(message,99,^4[NonSteam.pl] Nacisnij ^3+Uzyj - domyslnie klawisz ^E^^4 zeby uzyc okulary tylko ^3$%d^4,get_pcvar_num(koszt))

  • +
  • -
  • 0

#4 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 02.11.2008 21:42

formatex(message,99,^4[NonSteam.pl] Nacisnij ^3+Uzyj - domyslnie klawisz ^E^^4 zeby uzyc okulary tylko ^3$%d^4,get_pcvar_num(koszt))

a co to Ty wymyśliłeś ?
Wstaw któreś z tych co Ci podałem, kompiluje się z nimi bez problemów.
  • +
  • -
  • 0

#5 silversurfer

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 37
Życzliwy

  • Postów:209
  • Lokalizacja:Poznań
Offline

Napisano 02.11.2008 22:06

Wstawiłem każdy i żadne się nie skompilował...
  • +
  • -
  • 0

#6 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 02.11.2008 22:15

o_O
Testowałem nawet na webkompilerze(http://www.amxmodx.org/webcompiler.cgi):
Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

Header size:            704 bytes
Code size:             3408 bytes
Data size:             2760 bytes
Stack/heap size:      16384 bytes; estimated max. usage=40 cells (160 bytes)
Total requirements:   23256 bytes
Done.

Załączone pliki


  • +
  • -
  • 0

#7 silversurfer

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 37
Życzliwy

  • Postów:209
  • Lokalizacja:Poznań
Offline

Napisano 02.11.2008 22:40

Już wyszedłem na debila, czy stanie się to zaraz?

Proszę o close + kosz :>
  • +
  • -
  • 0

#8 mgr inż. Pavulon

    C35H60Br2N2O4

  • Przyjaciel

Reputacja: 1 742
Godlike

  • Postów:6 881
  • Steam:steam
  • Imię:Konrad
  • Lokalizacja:Koniecpol
Offline

Napisano 02.11.2008 22:47

Nie wyszedłeś, każdy może się pomylić ;)
  • +
  • -
  • 0




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

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