Thread: (Request) please help
View Single Post
Old 02-03-2014, 07:20 PM   #3
[TALOS]Smoke
 
Join Date: Jul 2012
Location: Killeen, Tx, USA
Class/Position: Demo Defense
Gametype: Capture the Flag
Affiliations: [TALOS]
Posts Rated Helpful 3 Times
Quote:
Originally Posted by ddm999 View Post
Your problem with the security icons was everytime you spawned, it would call flaginfo, which is last overwritten in base_shutdown, which tries to find buttons for your security system (no-one uses buttons, so everyone copies the aardvark stuff generally). The buttons don't exist, so it just resorts to putting the security online icons there.
Ok, I fixed a couple of things. Everything else seems to be working properly except the gen repair functions. I'm still trying to figure out why. Here's the gen parts after I fixed the errors.

Code:
----------------------------------------------------------------
-- Generators Destroy
----------------------------------------------------------------

red_gen_trigger = trigger_ff_script:new({ })

function red_gen_trigger:onexplode( trigger_entity  ) 
	if IsDetpack( trigger_entity ) then
	if CastToDetpack( trigger_entity ):GetTeamId() == Team.kBlue then
		if redgenup == 1 then
			redsecstatus = 0
			RemoveSchedule("secup10red")
			RemoveSchedule("beginclosered")
			RemoveSchedule("secupred")
			OutputEvent( "red_logicdown", "Trigger" )
			OpenDoor("red_gen_doorhack")
			BroadCastMessage("#FF_RED_GENBLOWN")
			SpeakAll( "SD_REDDOWN" )
			RemoveHudItemFromAll( "red-sec-up" )
			AddHudIconToAll( "hud_secdown.vtf", "red-sec-down", sec_iconx, sec_icony, sec_iconw, sec_iconh, 3 )
		end
	end
	end
	return EVENT_ALLOWED
end
function red_gen_trigger:allowed( trigger_entity ) return EVENT_DISALLOWED 
end



blue_gen_trigger = trigger_ff_script:new({ })

function blue_gen_trigger:onexplode( trigger_entity  ) 
	if IsDetpack( trigger_entity ) then
	if CastToDetpack( trigger_entity ):GetTeamId() == Team.kRed then
		if bluegenup == 1 then
			bluesecstatus = 0
			RemoveSchedule("secup10blue")
			RemoveSchedule("begincloseblue")
			RemoveSchedule("secupblue")
			OutputEvent( "blue_logicdown", "Trigger" )
			OpenDoor("blue_gen_doorhack")
			BroadCastMessage("#FF_BLUE_GENBLOWN")
			SpeakAll( "SD_BLUEDOWN" )
			RemoveHudItemFromAll( "blue-sec-up" )
			AddHudIconToAll( "hud_secdown.vtf", "blue-sec-down", sec_iconx, sec_icony, sec_iconw, sec_iconh, 2 )
		end
	end
	end
	return EVENT_ALLOWED
end
function blue_gen_trigger:allowed( trigger_entity ) return EVENT_DISALLOWED 
end

-----------------------------------------------------------------------------
-- Generators Repair
-----------------------------------------------------------------------------

red_gen_repair_trigger = func_button:new({})
red_gen_repair_trigger_script = trigger_ff_script:new()
redspannerclang = 0
redgenup = 1
redclangcntr = 0

function red_gen_repair_trigger_script:ontouch( touch_entity )
	if IsPlayer( touch_entity ) then
		local player = CastToPlayer( touch_entity )
		if player:GetActiveWeaponName() == "ff_weapon_spanner" and player:GetTeamId() == Team.kRed then
			redspannerclang = 1
		end
	end
end

function red_gen_repair_trigger_script:onendtouch()
	redspannerclang = 0
end

function red_gen_repair_trigger:ondamage()
	if redspannerclang == 1 then
		if redgenup == 0 then
			OutputEvent( "redspannerhit", "PlaySound" )
			ConsoleToAll("hitting gen")
			redclangcntr = redclangcntr + 1
            if redclangcntr > 4 then
                redclangcntr = 0             
                BroadCastMessage("#FF_RED_GEN_OK")
                OutputEvent( "red_logicup", "Trigger" )
				redsecstatus = 1
				CloseDoor("red_gen_doorhack")
				redspannerclang = 0
				redgenup = 1
				secupred()
				end
			end
		end
	return EVENT_DISALLOWED
end



blue_gen_repair_trigger = func_button:new({})
blue_gen_repair_trigger_script = trigger_ff_script:new()
bluespannerclang = 0
bluegenup = 1
blueclangcntr = 0


function blue_gen_repair_trigger_script:ontouch( touch_entity )
	if IsPlayer( touch_entity ) then
		local player = CastToPlayer( touch_entity )
			if player:GetActiveWeaponName() == "ff_weapon_spanner" and player:GetTeamId() == Team.kBlue then
				bluespannerclang = 1
			end
	end
end

function blue_gen_repair_trigger_script:onendtouch()
	bluespannerclang = 0
end

function blue_gen_repair_trigger:ondamage()
	if bluespannerclang == 1 then
		 if bluegenup == 0 then
			ConsoleToAll("hitting gen")
			OutputEvent( "bluespannerhit", "PlaySound" )
			blueclangcntr = blueclangcntr + 1
			if blueclangcntr > 4 then
				blueclangcntr = 0             
				BroadCastMessage("#FF_BLUE_GEN_OK")
				OutputEvent( "blue_logicup", "Trigger" )
				bluesecstatus=1
				CloseDoor("blue_gen_doorhack")
				bluespannerclang = 0
				bluegenup = 1
				secupblue()
			end
		end
	end
	return EVENT_DISALLOWED
end

Last edited by [TALOS]Smoke; 02-03-2014 at 07:26 PM.
[TALOS]Smoke is offline   Reply With Quote