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] Plugin wywołuje error jak się go użyje


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

#1 TaLoN

    Profesjonalista

  • Użytkownik

Reputacja: 1
Nowy

  • Postów:219
  • Imię:Tomasz
  • Lokalizacja:AMD MOD STUDIO
Offline

Napisano 31.05.2015 15:55

Cześć, mam problem z pluginem na serwer [ZP] otóż co jakiś czas wywołuje on error, jest to plugin dla Ekwipunku "Zombie"

Plugin sprawdzał się dobrze tylko teraz jak ktoż kupi bombe rzuci ją to automatycznie serwer się zawiesza ze statusem: Sprawdzam 

 

Logi

L 05/30/2015 - 13:55:58: Start of error session.
L 05/30/2015 - 13:55:58: Info (map "zm_hs_horror") (file "addons/amxmodx/logs/error_20150530.log")
L 05/30/2015 - 13:55:58: [AMXX] Displaying debug trace (plugin "zp_extra_zombiebomb.amxx")
L 05/30/2015 - 13:55:58: [AMXX] Run time error 3: stack error 
L 05/30/2015 - 13:55:58: [AMXX]    [0] zp_extra_zombiebomb.sma::ham_strip_weapon (line 371)
L 05/30/2015 - 13:55:58: [AMXX]    [1] zp_extra_zombiebomb.sma::EV_DeathMsg (line 170)

proszę o pomoc


  • +
  • -
  • 0

#2 Z!3L0ny

    Wszechobecny

  • Użytkownik

Reputacja: 171
Profesjonalista

  • Postów:494
  • GG:
  • Imię:Sebastian
  • Lokalizacja:Kielce
Offline

Napisano 31.05.2015 16:00

dodaj debug do 

zp_extra_zombiebomb.amxx

  • +
  • -
  • 1

#3 TaLoN

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:219
  • Imię:Tomasz
  • Lokalizacja:AMD MOD STUDIO
Offline

Napisano 31.05.2015 17:14

Właśnie tak mam:

zp_extra_zombiebomb.amxx debug

ale nadal jest error

 

Czy to zależy też, że nie ma średnika ?

zp_extra_zombiebomb.amxx ;debug

  • +
  • -
  • 0

#4 Z!3L0ny

    Wszechobecny

  • Użytkownik

Reputacja: 171
Profesjonalista

  • Postów:494
  • GG:
  • Imię:Sebastian
  • Lokalizacja:Kielce
Offline

Napisano 31.05.2015 17:15

Nie błąd jest w sma nigdy się nie dodaje średnika w debug


  • +
  • -
  • 1

#5 TaLoN

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:219
  • Imię:Tomasz
  • Lokalizacja:AMD MOD STUDIO
Offline

Napisano 31.05.2015 19:14

Czyli co trzeba zrobić?

 

Znalazłem w tym pluginie error

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2013 ITB CompuPhase, AMX Mod X Team

zp_extra_zombiebomb.sma(1) : error 010: invalid function or declaration
include/engine.inc(16) : error 017: undefined symbol "AMXX_VERSION_NUM"
zp_extra_zombiebomb.sma(404) : error 001: expected token: "}", but found "-end of file-"

3 Errors.
Could not locate output file zp_extra_zombiebomb.amxx (compile failed).

Ktoś pomoze?

 


Użytkownik TaLoN edytował ten post 31.05.2015 19:16

  • +
  • -
  • 0

#6 Z!3L0ny

    Wszechobecny

  • Użytkownik

Reputacja: 171
Profesjonalista

  • Postów:494
  • GG:
  • Imię:Sebastian
  • Lokalizacja:Kielce
Offline

Napisano 31.05.2015 19:25

Czyli co trzeba zrobić?

 

Znalazłem w tym pluginie error

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2013 ITB CompuPhase, AMX Mod X Team

zp_extra_zombiebomb.sma(1) : error 010: invalid function or declaration
include/engine.inc(16) : error 017: undefined symbol "AMXX_VERSION_NUM"
zp_extra_zombiebomb.sma(404) : error 001: expected token: "}", but found "-end of file-"

3 Errors.
Could not locate output file zp_extra_zombiebomb.amxx (compile failed).

Ktoś pomoze?

Daj sma


  • +
  • -
  • 1

#7 TaLoN

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:219
  • Imię:Tomasz
  • Lokalizacja:AMD MOD STUDIO
Offline

Napisano 31.05.2015 20:14

Proszę.

#include <amxmodx>
#include <engine>
#include <cstrike>
#include <fakemeta_util>
#include <hamsandwich>
#include <zombieplague>

new const PLUGIN_INFO[] = 
{
	"[ZP] ZombieBomb",
	"2.0",
	"Zombie-rus/heka"
}

#pragma tabsize 0
new SayText

const g_item_cost = 3

#define ZOMBIE_BOMB_V 	 			"models/cz/v_zombibomb.mdl"
#define ZOMBIE_BOMB_P	 			"models/cz/p_zombibomb.mdl"
#define ZOMBIE_BOMB_W 	 			"models/cz/w_zombibomb.mdl"

#define ZOMBIE_BOMB_BUY 			"items/gunpickup2.wav"
#define ZOMBIE_BOMB_EXP 			"nst_zombie/zombi_bomb_exp.wav"

#define ZOMBIE_BOMB_EXP_SPR			"sprites/knockbackbomb/zombiebomb_exp.spr"

new const frogbomb_sound [ ] = { "nst_zombie/zombi_bomb_pull_1.wav", "nst_zombie/zombi_bomb_deploy.wav" }
new const frogbomb_sound_idle [ ] = { "nst_zombie/zombi_bomb_idle_1.wav", "nst_zombie/zombi_bomb_idle_2.wav", "nst_zombie/zombi_bomb_idle_3.wav", "nst_zombie/zombi_bomb_idle_4.wav" }

#define ZOMBIE_BOMB_EXP_RADIUS		300.0
#define ZOMBIE_BOMB_EXP_POWER		650.0

#define NADE_TYPE_ZOMBIEBOMB    	26517

new g_ZombieBomb_ExpSpr
new g_ZombieBombID
new g_ZombieBomb [33]
new g_ZombieBomb_Icon[33][32]

public plugin_init ()
{
	register_plugin(PLUGIN_INFO[0],PLUGIN_INFO[1],PLUGIN_INFO[2])

	RegisterHam(Ham_Item_Deploy,"weapon_smokegrenade","FwdItemDeployPost",1);
	register_event("DeathMsg","EV_DeathMsg","a")
	register_event("CurWeapon","grenade_icon","be","1=1")
	
	register_forward(FM_SetModel,"fw_SetModel")
	RegisterHam(Ham_Think, "grenade","fw_ThinkGrenade")
	SayText = get_user_msgid("SayText")
	
	g_ZombieBombID = zp_register_extra_item ( "ML_KNOCKBACK_BOMB", g_item_cost, ZP_TEAM_ZOMBIE )
	
	register_dictionary("zombie_plague.txt")
}

public plugin_precache ( )
{
	precache_model(ZOMBIE_BOMB_P)
	precache_model(ZOMBIE_BOMB_V)
	precache_model(ZOMBIE_BOMB_W)

	precache_sound(ZOMBIE_BOMB_BUY)
	precache_sound(ZOMBIE_BOMB_EXP)
	
	precache_sound ( frogbomb_sound )
	precache_sound ( frogbomb_sound_idle )
	
	precache_generic("sprites/weapon_knockback_shaxu.txt")
	precache_generic("sprites/knockbackbomb/640hud61x.spr")	
	precache_generic("sprites/knockbackbomb/640hud7x.spr")	

	g_ZombieBomb_ExpSpr = precache_model (ZOMBIE_BOMB_EXP_SPR)
	
	register_clcmd("weapon_knockback_shaxu","Hook_SelectWeapon")		
}

public zp_extra_item_selected(id, itemid)
{
		if (itemid != g_ZombieBombID)
		return;
	
		if (g_ZombieBomb[id] >= 1 )
		{
			zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) + g_item_cost)
			ChatColor(id, "!g[ZP]!y %L", id, "KNOCKBACK_MAX" )
			return;
		}

		fm_give_item (id, "weapon_smokegrenade")
		emit_sound (id, CHAN_ITEM, ZOMBIE_BOMB_BUY, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)

		message_begin(MSG_ONE,get_user_msgid( "AmmoPickup"), _,id)
		write_byte (13)
		write_byte (1)
		message_end ()	
		
		WeaponList_Change(id,true)
		
		g_ZombieBomb [id] = 1
}

public zp_user_infected_post(id)
{
	if(zp_get_user_nemesis(id) || zp_is_survivor_round() || zp_is_nemesis_round())
		return;
	
	fm_give_item(id, "weapon_smokegrenade")
	engclient_cmd(id, "weapon_knife")
	cs_set_user_bpammo(id, CSW_SMOKEGRENADE, 1)
	emit_sound (id,CHAN_ITEM,ZOMBIE_BOMB_BUY,VOL_NORM,ATTN_NORM,0,PITCH_NORM)
	
	message_begin(MSG_ONE,get_user_msgid( "AmmoPickup"), _,id)
	write_byte (13)
	write_byte (1)
	message_end ()	
	
	WeaponList_Change(id,true)
	
	g_ZombieBomb [id] = 1
}

public zp_user_humanized_post(id)
{
	WeaponList_Change(id,false)
	g_ZombieBomb [id] = 0	
}

public zp_round_ended(id) 
{
	for (new i = 1; i <= get_maxplayers(); i++) 
	{
		if (is_user_alive(i) && zp_get_user_zombie(i)) 
		{
			ham_strip_weapon(i , "weapon_smokegrenade")
			WeaponList_Change(i,false)
			g_ZombieBomb[i] = 0
		}
	}
}

public Hook_SelectWeapon(id) engclient_cmd(id,"weapon_smokegrenade")		
public client_connect(id) g_ZombieBomb[id] = 0

public FwdItemDeployPost(entity)
{
	static id;
	id = get_pdata_cbase(entity, 41, 4);
 
	if(zp_get_user_zombie(id))
	{
		set_pev(id,pev_viewmodel2,ZOMBIE_BOMB_V)
		set_pev(id,pev_weaponmodel2,ZOMBIE_BOMB_P)
	}
}

public EV_DeathMsg()
{
	new iVictim = read_data (2)

	if (!is_user_connected(iVictim))
		return;
		
	if(!zp_get_user_zombie(iVictim))
		return
		
	remove_grenade_icon(iVictim)		
	ham_strip_weapon(iVictim,"weapon_smokegrenade")
	WeaponList_Change(iVictim,false)
	g_ZombieBomb[iVictim] = 0
}

public fw_SetModel(Entity,const Model[])
{
	if (Entity < 0)
		return FMRES_IGNORED;

	if (pev(Entity,pev_dmgtime) == 0.0)
		return FMRES_IGNORED;

	new iOwner = entity_get_edict ( Entity, EV_ENT_owner )

	if ( g_ZombieBomb [ iOwner ] >= 1 && equal ( Model [ 7 ], "w_sm", 4 ) )
	{
		set_pev(Entity,pev_flTimeStepSound,0)
		set_pev(Entity,pev_flTimeStepSound,NADE_TYPE_ZOMBIEBOMB)

		g_ZombieBomb[iOwner]--
		entity_set_model(Entity, ZOMBIE_BOMB_W)

		fm_set_rendering(Entity,kRenderFxHologram,255,165,0,kRenderNormal,16)

		return FMRES_SUPERCEDE;
	}
	return FMRES_IGNORED;
}

public fw_ThinkGrenade(Entity)
{
	if (!pev_valid(Entity))
		return HAM_IGNORED;

	static Float:dmg_time
	pev (Entity,pev_dmgtime,dmg_time)

	if (dmg_time > get_gametime())
		return HAM_IGNORED;

	if (pev(Entity,pev_flTimeStepSound) == NADE_TYPE_ZOMBIEBOMB)
	{
		jumping_explode (Entity)
		return HAM_SUPERCEDE;
	}
	return HAM_IGNORED;
}

public jumping_explode (Entity)
{
	if(Entity < 0)
		return

	static Float:flOrigin [3]
	pev(Entity,pev_origin,flOrigin)

	engfunc(EngFunc_MessageBegin,MSG_PVS,SVC_TEMPENTITY,flOrigin,0)
	write_byte(TE_SPRITE)
	engfunc(EngFunc_WriteCoord,flOrigin [0])
	engfunc(EngFunc_WriteCoord,flOrigin [1])
	engfunc(EngFunc_WriteCoord,flOrigin [2] + 45.0)
	write_short( g_ZombieBomb_ExpSpr )
	write_byte(35)
	write_byte(186)
	message_end()

	emit_sound (Entity,CHAN_WEAPON,ZOMBIE_BOMB_EXP,VOL_NORM,ATTN_NORM,0,PITCH_NORM)

	for (new i = 1; i < get_maxplayers (); i++)
	{
		if (!is_user_alive(i))
			continue;

		new Float:flVictimOrigin [3]
		pev (i,pev_origin,flVictimOrigin)

		new Float:flDistance = get_distance_f(flOrigin,flVictimOrigin)

		if (flDistance <= ZOMBIE_BOMB_EXP_RADIUS)
		{
			static Float:flSpeed
			flSpeed = ZOMBIE_BOMB_EXP_POWER

			static Float:flNewSpeed
			flNewSpeed = flSpeed * (1.0 - ( flDistance / ZOMBIE_BOMB_EXP_RADIUS))

			static Float:flVelocity [3]
			get_speed_vector(flOrigin,flVictimOrigin,flNewSpeed,flVelocity)

			set_pev (i,pev_velocity,flVelocity)

			message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("ScreenShake"), _, i)
			write_short((1<<12)*4) // amplitude
			write_short((1<<12)*10) // duration
			write_short((1<<12)*10) // frequency
			message_end()
			
			if(zp_get_user_zombie(i))
			{
				if (pev(i, pev_health) - 20.0 <= 0) ExecuteHamB(Ham_Killed, i, i, 1)
				else ExecuteHamB(Ham_TakeDamage, i, 0, i, 0.0, DMG_BLAST)
			}			
		}
	}
	engfunc(EngFunc_RemoveEntity,Entity)
}

public WeaponList_Change(id,bool:change)
{
	if (!is_user_connected(id))
		return;
	
	message_begin(MSG_ONE, get_user_msgid("WeaponList"), {0,0,0}, id)
	if (bool:change)
		write_string("weapon_knockback_shaxu")
	else
		write_string("weapon_smokegrenade")
	write_byte(13)
	write_byte(1)
	write_byte(-1)
	write_byte(-1)
	write_byte(3)
	write_byte(3)
	write_byte(9)
	write_byte(24)
	message_end()
}

public grenade_icon(id)
{
	remove_grenade_icon(id)

	if(is_user_bot(id))
		return

	static igrenade, grenade_sprite[16], grenade_color[3]
	igrenade = get_user_weapon(id)

	switch(igrenade)
	{
		case CSW_SMOKEGRENADE:
		{
			if(!is_user_alive(id) || zp_get_user_zombie(id))
			{
				grenade_sprite = "dmg_gas"
				grenade_color = {255, 165, 0}
			}
			else
			{
				grenade_sprite = ""
				grenade_color = {0, 0, 0}
			}
		}
		default: return
	}
	g_ZombieBomb_Icon[id] = grenade_sprite

	message_begin(MSG_ONE,get_user_msgid("StatusIcon"),{0,0,0},id)
	write_byte(1)
	write_string(g_ZombieBomb_Icon[id])
	write_byte(grenade_color[0])
	write_byte(grenade_color[1])
	write_byte(grenade_color[2])
	message_end()

	return
}

public remove_grenade_icon(id)
{
	message_begin(MSG_ONE,get_user_msgid("StatusIcon"),{0,0,0},id)
	write_byte(0)
	write_string(g_ZombieBomb_Icon[id])
	message_end()
}

stock get_speed_vector(const Float:origin1[3],const Float:origin2[3],Float:speed, Float:new_velocity[3])
{
	new_velocity[0] = origin2[0] - origin1[0]
	new_velocity[1] = origin2[1] - origin1[1]
	new_velocity[2] = origin2[2] - origin1[2]
	new Float:num = floatsqroot(speed*speed / (new_velocity[0]*new_velocity[0] + new_velocity[1]*new_velocity[1] + new_velocity[2]*new_velocity[2]))
	new_velocity[0] *= num
	new_velocity[1] *= num
	new_velocity[2] *= num

	return 1;
}

stock ham_strip_weapon(id,weapon[])
{
	if(!equal(weapon,"weapon_",7)) return 0

    new wId = get_weaponid(weapon)
    if(!wId) return 0

    new wEnt
    while((wEnt = engfunc(EngFunc_FindEntityByString,wEnt,"classname",weapon)) && pev(wEnt,pev_owner) != id) {}
    if(!wEnt) return 0

    if(get_user_weapon(id) == wId) ExecuteHamB(Ham_Weapon_RetireWeapon,wEnt)

    if(!ExecuteHamB(Ham_RemovePlayerItem,id,wEnt)) return 0
    ExecuteHamB(Ham_Item_Kill,wEnt);

    set_pev(id,pev_weapons,pev(id,pev_weapons) & ~(1<<wId))

    return 1
}

stock ChatColor(const id, const input[], any:...)
{
    new count = 1, players[32]
    static msg[191]
    vformat(msg, 190, input, 3)

    replace_all(msg, 190, "!g", "^4") // Green Color
    replace_all(msg, 190, "!y", "^1") // Default Color
    replace_all(msg, 190, "!t", "^3") // Team Color
    replace_all(msg, 190, "!t2", "^0") // Team2 Color

    if (id) players[0] = id; else get_players(players, count, "ch")
    {
        for (new i = 0; i < count; i++)
        {
            if (is_user_connected(players[i]))
            {
                message_begin(MSG_ONE_UNRELIABLE, SayText, _, players[i])
                write_byte(players[i]);
                write_string(msg);
                message_end();
            }
        }
    }


  • +
  • -
  • 0

#8 Z!3L0ny

    Wszechobecny

  • Użytkownik

Reputacja: 171
Profesjonalista

  • Postów:494
  • GG:
  • Imię:Sebastian
  • Lokalizacja:Kielce
Offline

Napisano 31.05.2015 20:40

Zobacz to:

Spoiler

  • +
  • -
  • 1

#9 TaLoN

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 1
Nowy

  • Postów:219
  • Imię:Tomasz
  • Lokalizacja:AMD MOD STUDIO
Offline

Napisano 01.06.2015 21:44

Działa wielkie + dla cb!

Do zamknięcia.


  • +
  • -
  • 0

#10 MAGNET

    SourceLearned ;)

  • Moderator

Reputacja: 661
Wszechmogący

  • Postów:1 535
  • GG:
  • Imię:Olek
  • Lokalizacja:Dalekoo
Offline

Napisano 04.06.2015 21:29

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