Now, I don't know what to say.

I returned "doubled ButtonPressed" and now scripts works excellent, without any appearent bugs.
Now, what is really different between my new script and original I have no idea. Copy/Paste of original didn't worked, while this one works. Maybe it has something to do with formatting?


Here is the script:
(I'll delete old listings to prevent confusion)

Code:
;Hotseat script by Myrddraal Beta Version
script 
;Set up counters
declare_counter loop		;Used to keep script running
set_counter loop 1
declare_counter faction		;Used to determine who's turn it is
set_counter faction 1
declare_counter waitcounter	;Used to stop the script swapping control between
set_counter waitcounter 1	;the two factions back and forth
declare_counter esckeystolen	;Used to check what the escape key is supposed to do
set_counter esckeystolen 0
suspend_during_battle on	;Make sure the script doesn't stop working after a battle
;---------------------------------------------------------------------
monitor_event ButtonPressed ButtonPressed end_turn	;The user presses the end turn button....
	if I_CompareCounter faction = 1
		console_command halt_ai germans		;Stops the AI at the start of
	end_if						;the German turn if faction = 1
	if I_CompareCounter faction = 2
		console_command halt_ai romans_julii	;Stops the AI at the start
	end_if						;of the Julii turn if faction = 2
	steal_esc_key on		;Stops the escape key from bringing up the menu
	set_counter esckeystolen 1	;so that it can be used to switch control
end_monitor
;---------------------------------------------------------------------
monitor_event EscPressed TrueCondition	;Player then presses esc to control the next faction.
and I_CompareCounter esckeystolen = 1
	set_counter waitcounter 0
	if I_CompareCounter faction = 2
	and I_CompareCounter waitcounter = 0
		console_command control romans_julii	;If currrently controlling the germans,
		set_counter faction 1			;switch to the Julii.
		set_counter waitcounter 1
	end_if
	if I_CompareCounter faction = 1
	and I_CompareCounter waitcounter = 0
		console_command control germans		;If currently controlling the Julii,
		set_counter faction 2			;switch to the germans.
		set_counter waitcounter 1
	end_if
	steal_esc_key off	;Set the esc key back to menu.
	set_counter esckeystolen 0
end_monitor
while I_CompareCounter loop = 1	;Make sure the script doesn't end
end_while
terminate_script