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] Kompilacja pluginu, błędy przy kompilacji


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

#1 Wąski TDW

    Początkujący

  • Użytkownik

Reputacja: 3
Nowy

  • Postów:15
Offline

Napisano 20.03.2017 14:25

Witam!
Pół dnia siedzę w sma pluginu knife mod, przerobionego przez darkgl tak, aby nie dodawał bonusów. Zależy mi tylko na zmianie modelu noża. Babram się i babram, eliminuję ostrzeżenia i błędy, ale nie do końca wiem co one wszystkie oznaczają i co mam zrobić aby i je wyeliminować. 

 

Poniżej proszę plugin:

#include <amxmodx>
#include <amxmisc>
#include <engine> 
#include <vault>
#include <fun>

#define PLUGIN "Knife Mod"
#define VERSION "1.0" 
#define AUTHOR "spunko"

#define TASK_INTERVAL 4.0  
#define MAX_HEALTH 255  

new knife_model[33] 
new g_Menu


public plugin_init() { 
	
	register_plugin(PLUGIN, VERSION, AUTHOR) 
	
	register_event( "Damage", "event_damage", "be" )
	register_event("CurWeapon","CurWeapon","be","1=1") 
	
	g_Menu = register_menuid("Knife Mod")
	register_menucmd(g_Menu, 1023, "knifemenu")
	
	register_clcmd("say /kosa", "display_knife")
	register_clcmd("say /kosy", "display_knife")
	register_clcmd("say_team /kosa", "display_knife")
	register_clcmd("say_team /kosy", "display_knife")
	register_clcmd("say /noz", "display_knife")
	register_clcmd("say /noze", "display_knife")
	register_clcmd("say_team /noz", "display_knife")
	register_clcmd("say_team /noze", "display_knife")
	
	set_task(480.0, "kmodmsg", 0, _, _, "b")
}

public plugin_precache() { 
	precache_model("models/gamingpro/v_gamma.mdl") 
	precache_model("models/gamingpro/v_autotronic.mdl") 
	precache_model("models/gamingpro/v_marble.mdl")
	precache_model("models/gamingpro/v_doppler1.mdl")
	precache_model("models/gamingpro/v_doppler2.mdl")
	precache_model("models/gamingpro/v_doppler3.mdl")
	precache_model("models/gamingpro/v_doppler4.mdl")
	precache_model("models/v_knife.mdl") 
	precache_model("models/p_knife.mdl")
} 

public display_knife(id) {
	new menuBody[512]
	add(menuBody, 511, "\rBagnety\w^n^n")
	add(menuBody, 511, "1. Gamma Doppler")
	add(menuBody, 511, "2. Autotronic")
	add(menuBody, 511, "3. Marble Fade")
	add(menuBody, 511, "4. Doppler Phase 1")
	add(menuBody, 511, "5. Doppler Phase 2")
	add(menuBody, 511, "6. Doppler Phase 3")
	add(menuBody, 511, "7. Doppler Phase 4")
	add(menuBody, 511, "0. \rExit")
	
	new keys = ( 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5 | 1<<6 | 1<<7 |  1<<9 )
	show_menu(id, keys, menuBody, -1, "Kosy")
}

public knifemenu(id, key) {
	switch(key) 
	{
	     case 0: SetKnife(id , 0)
	     case 1: SetKnife(id , 1)
	     case 2: SetKnife(id , 2)
	     case 3: SetKnife(id , 3)
	     case 4: SetKnife(id , 4)
	     case 5: SetKnife(id , 5)
	     case 6: SetKnife(id , 6)
	     case 7: SetKnife(id , 7)
	     default: return PLUGIN_HANDLED
	     }
	     } 

public SetKnife(id , Knife) {
	knife_model[id] = Knife
	
	new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo) 
	if ( Weapon != CSW_KNIFE )
		return PLUGIN_HANDLED
	
	new vModel[56],
	
	switch(Knife)
	{
		case 0: {
		format(vModel,55,"models/v_knife.mdl")
		}
		case 1: {
		format(vModel,55,"models/gamingpro/v_gamma.mdl")
		}
		case 2: {
		format(vModel,55,"models/gamingpro/v_autotronic.mdl")
		}
		case 3: {
		format(vModel,55,"models/gamingpro/v_marble.mdl")
		}
		case 4: {
		format(vModel,55,"models/gamingpro/v_doppler1.mdl")
		}
		case 5: {
		format(vModel,55,"models/gamingpro/v_doppler2.mdl")
		}
		case 6: {
		format(vModel,55,"models/gamingpro/v_doppler3.mdl")
		}
		case 7: {
		format(vModel,55,"models/gamingpro/v_doppler4.mdl")
		}
	} 
	
	entity_set_string(id, EV_SZ_viewmodel, vModel)
	
	return PLUGIN_HANDLED;  
}

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par }
*/

Przy kompilacji pluginu otrzymuję takie oto błędy:

knife_mod.sma(81) : warning 209: function "knifemenu" should return a value
knife_mod.sma(92) : error 020: invalid symbol name ""
knife_mod.sma(92 -- 93) : error 028: invalid subscript (not an array or too many subscripts): "Knife"
knife_mod.sma(92 -- 94) : error 001: expected token: "}", but found "case"
knife_mod.sma(92 -- 94) : fatal error 107: too many error messages on one line

Rozumiem, że błędy znajdują się w tych linijkach, ale nie mam pojęcia co jest źle i jak to poprawić. Dodam, że zbyt zaawansowany to ja nie jestem.

Przepraszam jeżeli zły dział, ale kilka mi pasowało do napisania tematu.

Liczę na pomoc.


  • +
  • -
  • 0

#2 Robiin

    Godlike

  • Support Team

Reputacja: 1 107
Super Hero

  • Postów:2 051
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 20.03.2017 16:37

Linijka 90

new vModel[56],

--->

new vModel[56]
public knifemenu(id, key) {
	switch(key) 
	{
	     case 0: SetKnife(id , 0)
	     case 1: SetKnife(id , 1)
	     case 2: SetKnife(id , 2)
	     case 3: SetKnife(id , 3)
	     case 4: SetKnife(id , 4)
	     case 5: SetKnife(id , 5)
	     case 6: SetKnife(id , 6)
	     case 7: SetKnife(id , 7)
	     default: return PLUGIN_HANDLED
	     }
	     }  

----->

public knifemenu(id, key) {
	switch(key) 
	{
		case 0: SetKnife(id , 0)
		case 1: SetKnife(id , 1)
		case 2: SetKnife(id , 2)
		case 3: SetKnife(id , 3)
		case 4: SetKnife(id , 4)
		case 5: SetKnife(id , 5)
		case 6: SetKnife(id , 6)
		case 7: SetKnife(id , 7)
		default: return PLUGIN_HANDLED
		}
	return PLUGIN_HANDLED;
} 

  • +
  • -
  • 1

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#3 Wąski TDW

    Początkujący

  • Autor tematu
  • Użytkownik

Reputacja: 3
Nowy

  • Postów:15
Offline

Napisano 20.03.2017 18:46

Dzięki wielkie, ładnie skompilowało. Szkoda tylko, że nie działa plugin :D
 


  • +
  • -
  • 0

#4 Robiin

    Godlike

  • Support Team

Reputacja: 1 107
Super Hero

  • Postów:2 051
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 20.03.2017 18:59

Daj kod pluginu sprzed edycji.


  • +
  • -
  • 0

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#5 Wąski TDW

    Początkujący

  • Autor tematu
  • Użytkownik

Reputacja: 3
Nowy

  • Postów:15
Offline

Napisano 20.03.2017 19:33

#include <amxmodx>

#include <amxmisc>

#include <engine> 

#include <vault>

#include <fun>



#pragma semicolon 0



#define PLUGIN "Knife Mod"

#define VERSION "1.0" 

#define AUTHOR "spunko"



new knife_model[33] 

new g_Menu



public plugin_init() { 

	

	register_plugin(PLUGIN, VERSION, AUTHOR) 

	

	register_event("CurWeapon","CurWeapon","be","1=1") 

	

	g_Menu = register_menuid("Knife Mod")

	register_menucmd(g_Menu, 1023, "knifemenu")

	

	register_clcmd("say /knife", "display_knife")

	

	set_task(480.0, "kmodmsg", 0, _, _, "b")

}



public plugin_precache() { 

	precache_model("models/knife-mod/v_butcher.mdl") 

	precache_model("models/knife-mod/p_butcher.mdl") 

	precache_model("models/knife-mod/v_machete.mdl")

	precache_model("models/knife-mod/p_machete.mdl")

	precache_model("models/knife-mod/v_bak.mdl")

	precache_model("models/knife-mod/p_bak.mdl")

	precache_model("models/knife-mod/v_pocket.mdl")

	precache_model("models/knife-mod/p_pocket.mdl")

	precache_model("models/v_knife.mdl") 

	precache_model("models/p_knife.mdl")

} 



public display_knife(id) {

	new menuBody[512]

	add(menuBody, 511, "\rKnife Mod\w^n^n")

	add(menuBody, 511, "1. Machete \y(More Damage/Low Speed)\w^n")

	add(menuBody, 511, "2. Bak Knife \y(No Footsteps)\w^n")

	add(menuBody, 511, "3. Pocket Knife \y(High Speed)\w^n")

	add(menuBody, 511, "4. Butcher Knife \y(Low Gravity)\w^n")

	add(menuBody, 511, "5. Default Knife \y(Health Regeneration)\w^n^n")

	add(menuBody, 511, "0. Exit^n")

	

	new keys = ( 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<9 )

	show_menu(id, keys, menuBody, -1, "Knife Mod")

}



public knifemenu(id, key) {

	switch(key) 

	{

		case 0: SetKnife(id , 4)

		case 1: SetKnife(id , 2)

		case 2: SetKnife(id , 3)

		case 3: SetKnife(id , 1)

		case 4: SetKnife(id , 0)

		default: return PLUGIN_HANDLED

	}

	SaveData(id)

	return PLUGIN_HANDLED

} 



public SetKnife(id , Knife) {

	knife_model[id] = Knife

	

	new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo) 

	if ( Weapon != CSW_KNIFE )

		return PLUGIN_HANDLED

	

	new vModel[56],pModel[56]

	

	switch(Knife)

	{

		case 0: {

			format(vModel,55,"models/v_knife.mdl")

			format(pModel,55,"models/p_knife.mdl")

		}

		case 1: {

			format(vModel,55,"models/knife-mod/v_butcher.mdl")

			format(pModel,55,"models/knife-mod/p_butcher.mdl")

		}

		case 2: {

			format(vModel,55,"models/knife-mod/v_bak.mdl")

			format(pModel,55,"models/knife-mod/p_bak.mdl")

		}

		case 3: {

			format(vModel,55,"models/knife-mod/v_pocket.mdl")

			format(pModel,55,"models/knife-mod/p_pocket.mdl")

		}

		case 4: {

			format(vModel,55,"models/knife-mod/v_machete.mdl")

			format(pModel,55,"models/knife-mod/p_machete.mdl")

		}

	} 

	

	entity_set_string(id, EV_SZ_viewmodel, vModel)

	entity_set_string(id, EV_SZ_weaponmodel, pModel)

	

	return PLUGIN_HANDLED;  

}



public CurWeapon(id){

	SetKnife(id, knife_model[id])   	

}





public kmodmsg() { 

	

	client_print(0,print_chat,"[AMXX] Type /knife to change your knife skins")

}  



public client_authorized(id){

	LoadData(id)

}



SaveData(id)

{ 

	

	new authid[32]

	get_user_authid(id, authid, 31)

	

	new vaultkey[64]

	new vaultdata[64]

	

	format(vaultkey, 63, "KMOD_%s", authid)

	format(vaultdata, 63, "%d", knife_model[id])

	set_vaultdata(vaultkey, vaultdata)

}



LoadData(id) 

{ 

	new authid[32] 

	get_user_authid(id,authid,31)

	

	new vaultkey[64], vaultdata[64]

	

	format(vaultkey, 63, "KMOD_%s", authid)

	get_vaultdata(vaultkey, vaultdata, 63)

	knife_model[id] = str_to_num(vaultdata)

	

}

Jest to po prostu próba przerobienia przerobionego pluginu przez DarkGL, aby zwyczajnie móc wybrać model noża.

Zdobyty w tym temacie: https://amxx.pl/topi...e-mod-bez-mocy/


  • +
  • -
  • 0

#6 Robiin

    Godlike

  • Support Team

Reputacja: 1 107
Super Hero

  • Postów:2 051
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 20.03.2017 21:54

#include <amxmodx>

#include <amxmisc>

#include <engine> 

#include <vault>

#include <fun>



#pragma semicolon 0



#define PLUGIN "Knife Mod"

#define VERSION "1.0" 

#define AUTHOR "spunko"



new knife_model[33] 

new g_Menu



public plugin_init() { 

	

	register_plugin(PLUGIN, VERSION, AUTHOR) 

	

	register_event("CurWeapon","CurWeapon","be","1=1") 

	

	g_Menu = register_menuid("Knife Mod")

	register_menucmd(g_Menu, 1023, "knifemenu")

	

	register_clcmd("say /knife", "display_knife")

	

	set_task(480.0, "kmodmsg", 0, _, _, "b")

}



public plugin_precache() { 

	precache_model("models/knife-mod/v_butcher.mdl") 

	precache_model("models/knife-mod/p_butcher.mdl") 

	precache_model("models/knife-mod/v_machete.mdl")

	precache_model("models/knife-mod/p_machete.mdl")

	precache_model("models/knife-mod/v_bak.mdl")

	precache_model("models/knife-mod/p_bak.mdl")

	precache_model("models/knife-mod/v_pocket.mdl")

	precache_model("models/knife-mod/p_pocket.mdl")

	precache_model("models/v_knife.mdl") 

	precache_model("models/p_knife.mdl")

} 



public display_knife(id) {

	new menuBody[512]

	add(menuBody, 511, "\rKnife Mod\w^n^n")

	add(menuBody, 511, "1. Machete \y(More Damage/Low Speed)\w^n")

	add(menuBody, 511, "2. Bak Knife \y(No Footsteps)\w^n")

	add(menuBody, 511, "3. Pocket Knife \y(High Speed)\w^n")

	add(menuBody, 511, "4. Butcher Knife \y(Low Gravity)\w^n")

	add(menuBody, 511, "5. Default Knife \y(Health Regeneration)\w^n^n")

	add(menuBody, 511, "0. Exit^n")

	

	new keys = ( 1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<9 )

	show_menu(id, keys, menuBody, -1, "Knife Mod")

}



public knifemenu(id, key) {

	switch(key) 

	{

		case 0: SetKnife(id , 4)

		case 1: SetKnife(id , 2)

		case 2: SetKnife(id , 3)

		case 3: SetKnife(id , 1)

		case 4: SetKnife(id , 0)

		default: return PLUGIN_HANDLED

	}

	SaveData(id)

	return PLUGIN_HANDLED

} 



public SetKnife(id , Knife) {

	knife_model[id] = Knife

	

	new Clip, Ammo, Weapon = get_user_weapon(id, Clip, Ammo) 

	if ( Weapon != CSW_KNIFE )

		return PLUGIN_HANDLED

	

	new vModel[56],pModel[56]

	

	switch(Knife)

	{

		case 0: {

			format(vModel,55,"models/v_knife.mdl")

			format(pModel,55,"models/p_knife.mdl")

		}

		case 1: {

			format(vModel,55,"models/knife-mod/v_butcher.mdl")

			format(pModel,55,"models/knife-mod/p_butcher.mdl")

		}

		case 2: {

			format(vModel,55,"models/knife-mod/v_bak.mdl")

			format(pModel,55,"models/knife-mod/p_bak.mdl")

		}

		case 3: {

			format(vModel,55,"models/knife-mod/v_pocket.mdl")

			format(pModel,55,"models/knife-mod/p_pocket.mdl")

		}

		case 4: {

			format(vModel,55,"models/knife-mod/v_machete.mdl")

			format(pModel,55,"models/knife-mod/p_machete.mdl")

		}

	} 

	

	entity_set_string(id, EV_SZ_viewmodel, vModel)

	entity_set_string(id, EV_SZ_weaponmodel, pModel)

	

	return PLUGIN_HANDLED;  

}



public CurWeapon(id){

	SetKnife(id, knife_model[id])   	

}





public kmodmsg() { 

	

	client_print(0,print_chat,"[AMXX] Type /knife to change your knife skins")

}  



public client_authorized(id){

	LoadData(id)

}



SaveData(id)

{ 

	

	new authid[32]

	get_user_authid(id, authid, 31)

	

	new vaultkey[64]

	new vaultdata[64]

	

	format(vaultkey, 63, "KMOD_%s", authid)

	format(vaultdata, 63, "%d", knife_model[id])

	set_vaultdata(vaultkey, vaultdata)

}



LoadData(id) 

{ 

	new authid[32] 

	get_user_authid(id,authid,31)

	

	new vaultkey[64], vaultdata[64]

	

	format(vaultkey, 63, "KMOD_%s", authid)

	get_vaultdata(vaultkey, vaultdata, 63)

	knife_model[id] = str_to_num(vaultdata)

	

}

Jest to po prostu próba przerobienia przerobionego pluginu przez DarkGL, aby zwyczajnie móc wybrać model noża.

Zdobyty w tym temacie: https://amxx.pl/topi...e-mod-bez-mocy/

 

Prosiłem o kod sprzed edycji. Nie ważne. Skompiluj swoj kod ! lokalnie ! i powinno działać. Nie ma w kodzie żadnych bonusów (czyt. funkcji z hp, speed etc.).


  • +
  • -
  • 0

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#7 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 986
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 23.03.2017 12:20

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




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

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