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

[ROZWIĄZANE] 1 błąd podczas kompilacji pliku


Najlepsza odpowiedź he1st, 28.12.2014 14:27

Error 209: Funkcja X powinna zwrócić wartość.

 
#include <amxmodx>
#include <fun>
 
 
#define PLUGIN "PLUG"
#define VERSION "1.0"
#define AUTHOR "Dawid"
 
new uzyl[33]
 
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /dodajhp","hp")
register_event("HLTV", "NowaRunda", "a", "1=0", "2=0");
}
public client_connect(id)
{
uzyl[id]=false
}
public hp(id)
{
if(!is_user_alive(id))
{
client_print(id, print_chat, "Niestety, ale jestes niezywy i nie mozesz uzyc tej komendy");
return PLUGIN_CONTINUE; 
}
if(uzyl[id])
{
client_print(id,print_chat, "Komenda dostepna jest tylko raz na runde");
return PLUGIN_CONTINUE; 
}
set_user_health(id, 150)
client_print(id,print_chat, "Dodano Ci 150HP!");
uzyl[id] = true
return PLUGIN_HANDLED /// Tego zabrakło
}
 
public NowaRunda()
{
for(new id = 1; id <= get_maxplayers(); id++)
{
uzyl[id] = false
}
}

Poza tym jak chcesz dodać komuś 150hp, a nie ustawić 150hp tak wyczytałem stąd:

client_print(id,print_chat, "Dodano Ci 150HP!");

to powinieneś użyć

set_user_health(id, get_user_health + 150)

 

 

Przejdź do postu


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

#1 IntelCom

    Wszechwiedzący

  • Power User

Reputacja: 100
Zaawansowany

  • Postów:500
  • GG:
  • Imię:Dawid
  • Lokalizacja:Opole
Offline

Napisano 28.12.2014 14:11

Witam,

 

Podczas kompilacji prostego pluginu pojawił mi się błąd.Jak go naprawić?

 

1) PLUGIN

#include <amxmodx>
#include <fun>


#define PLUGIN "PLUG"
#define VERSION "1.0"
#define AUTHOR "Dawid"

new uzyl[33]

public plugin_init()
{
	register_plugin(PLUGIN, VERSION, AUTHOR)
	register_clcmd("say /dodajhp","hp")
	register_event("HLTV", "NowaRunda", "a", "1=0", "2=0");
}
public client_connect(id)
{
	uzyl[id]=false
}
public hp(id)
{
	if(!is_user_alive(id))
	{
		client_print(id, print_chat, "Niestety, ale jestes niezywy i nie mozesz uzyc tej komendy");
		return PLUGIN_CONTINUE; 
	}
	if(uzyl[id])
	{
		client_print(id,print_chat, "Komenda dostepna jest tylko raz na runde");
		return PLUGIN_CONTINUE; 
	}
	set_user_health(id, 150)
	client_print(id,print_chat, "Dodano Ci 150HP!");
	uzyl[id] = true
}

public NowaRunda()
{
	for(new id = 1; id <= get_maxplayers(); id++)
	{
		uzyl[id] = false
	}
}

2) BŁĄD

 

 

Welcome to the AMX Mod X 1.8.1-300 Compiler.

Copyright © 1997-2006 ITB CompuPhase, AMX Mod X Team
 
kol.sma(36) : warning 209: function "hp" should return a value
Header size:            336 bytes
Code size:              788 bytes
Data size:              828 bytes
Stack/heap size:      16384 bytes; estimated max. usage=40 cells (160 bytes)
Total requirements:   18336 bytes
 
1 Warning.
Done.
 

 

Z góry dzięki za pomoc.


  • +
  • -
  • 0

#2 he1st

    Diablo Mody i te sprawy ;3

  • Użytkownik

Reputacja: 132
Zaawansowany

  • Postów:357
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 28.12.2014 14:27   Najlepsza odpowiedź

Error 209: Funkcja X powinna zwrócić wartość.

 
#include <amxmodx>
#include <fun>
 
 
#define PLUGIN "PLUG"
#define VERSION "1.0"
#define AUTHOR "Dawid"
 
new uzyl[33]
 
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_clcmd("say /dodajhp","hp")
register_event("HLTV", "NowaRunda", "a", "1=0", "2=0");
}
public client_connect(id)
{
uzyl[id]=false
}
public hp(id)
{
if(!is_user_alive(id))
{
client_print(id, print_chat, "Niestety, ale jestes niezywy i nie mozesz uzyc tej komendy");
return PLUGIN_CONTINUE; 
}
if(uzyl[id])
{
client_print(id,print_chat, "Komenda dostepna jest tylko raz na runde");
return PLUGIN_CONTINUE; 
}
set_user_health(id, 150)
client_print(id,print_chat, "Dodano Ci 150HP!");
uzyl[id] = true
return PLUGIN_HANDLED /// Tego zabrakło
}
 
public NowaRunda()
{
for(new id = 1; id <= get_maxplayers(); id++)
{
uzyl[id] = false
}
}

Poza tym jak chcesz dodać komuś 150hp, a nie ustawić 150hp tak wyczytałem stąd:

client_print(id,print_chat, "Dodano Ci 150HP!");

to powinieneś użyć

set_user_health(id, get_user_health + 150)

 

 


Użytkownik MS.Zer0. edytował ten post 28.12.2014 14:31

  • +
  • -
  • 1

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#3 IntelCom

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 100
Zaawansowany

  • Postów:500
  • GG:
  • Imię:Dawid
  • Lokalizacja:Opole
Offline

Napisano 28.12.2014 14:33

Dopiero się uczę ;)

 

Jeszcze raz dzięki za pomoc ;)


  • +
  • -
  • 0

#4 he1st

    Diablo Mody i te sprawy ;3

  • Użytkownik

Reputacja: 132
Zaawansowany

  • Postów:357
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 28.12.2014 14:48

Dopiero się uczę ;)

 

Jeszcze raz dzięki za pomoc ;)

Człowiek uczy się całe życie ;) Poza tym tylko zwróciłem uwagę i miało to na celu przekazać Ci dodatkowe info ;)


  • +
  • -
  • 0

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#5 IntelCom

    Wszechwiedzący

  • Autor tematu
  • Power User

Reputacja: 100
Zaawansowany

  • Postów:500
  • GG:
  • Imię:Dawid
  • Lokalizacja:Opole
Offline

Napisano 28.12.2014 14:53

Ok, mam jeszcze jedno pytanie, bo jak zmieniam:

set_user_health(id, 150)

na

set_user_health(id, get_user_health + 150)

To są błędy, a jak bym dodał:

set_user_health(id, get_user_health(id)+50);

To gracz po wpisaniu /dodajhp otrzyma +50hp do tego co ma?


  • +
  • -
  • 0

#6 he1st

    Diablo Mody i te sprawy ;3

  • Użytkownik

Reputacja: 132
Zaawansowany

  • Postów:357
  • GG:
  • Imię:Michał
  • Lokalizacja:Legionowo
Offline

Napisano 28.12.2014 16:04

Ok, mam jeszcze jedno pytanie, bo jak zmieniam:

set_user_health(id, 150)

na

set_user_health(id, get_user_health + 150)

To są błędy, a jak bym dodał:

set_user_health(id, get_user_health(id)+50);

To gracz po wpisaniu /dodajhp otrzyma +50hp do tego co ma?

 

Przez ten zlagowany internet nie dało indexu (id) do get_user_health wybacz. 

 

 

set_user_health(id, get_user_health(id)+50);

 

Tak, po wpisaniu /dodajhp gracz otrzyma +50hp do tego co ma


  • +
  • -
  • 0

b_350_20_000000_000000_FFFFFF_DA0707.png
b_350_20_000000_000000_FFFFFF_DA0707.png


#7 radim

    Godlike

  • Moderator

Reputacja: 939
Master

  • Postów:2 725
  • Steam:steam
  • Imię:Arkadiusz
  • Lokalizacja:Janów Lub.
Offline

Napisano 29.12.2014 12:50

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0

Chcąc napisać do mnie prywatną wiadomość, wpierw zapoznaj się ze stroną "O mnie" w moim profilu użytkownika [ radim ] !





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

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