Accums


(sQynor) #21

sorry for triple post… but this is what i got so far…

but my problem is … It won’t get further than the globaccum 7 abort_if_not_bitset 1

if i press button left_1_activate…

here’s script ( i know i still need to do the turn thingy… )

left_1_activate
{
	trigger left_1_activate
	{
		globalaccum 7 abort_if_not_bitset 1
		trigger tictactoe_cross cross_1
		globalaccum 7 bitset 1
	}
}
left_2_activate
{
	trigger left_2_activate
	{
		globalaccum 7 abort_if_not_bitset 2
		trigger tictactoe_cross cross_2
		globalaccum 7 bitset 2
	}
}
left_3_activate
{
	trigger left_3_activate
	{
		globalaccum 7 abort_if_not_bitset 3
		trigger tictactoe_cross cross_3
		globalaccum 7 bitset 3
	}
}
left_4_activate
{
	trigger left_4_activate
	{
		globalaccum 7 abort_if_not_bitset 4
		trigger tictactoe_cross cross_4
		globalaccum 7 bitset 4
	}
}
left_5_activate
{
	trigger left_5_activate
	{
		globalaccum 7 abort_if_not_bitset 5
		trigger tictactoe_cross cross_5
		globalaccum 7 bitset 5
	}
}
left_6_activate
{
	trigger left_6_activate
	{
		globalaccum 7 abort_if_not_bitset 6
		trigger tictactoe_cross cross_6
		globalaccum 7 bitset 6
	}
}
left_7_activate
{
	trigger left_7_activate
	{
		globalaccum 7 abort_if_not_bitset 7
		trigger tictactoe_cross cross_7
		globalaccum 7 bitset 7

	}
}
left_8_activate
{
	trigger left_8_activate
	{
		globalaccum 7 abort_if_not_bitset 8
		trigger tictactoe_cross cross_8
		globalaccum 7 bitset 8

	}
}
left_9_activate
{
	trigger left_9_activate
	{
		globalaccum 7 abort_if_not_bitset 9
		trigger tictactoe_cross cross_9
		globalaccum 7 bitset 9
	}
}
right_1_activate
{
	trigger right_1_activate
	{
		globalaccum 7 abort_if_not_bitset 1
		trigger tictactoe_circle circle_1
		globalaccum 7 bitset 1
	}
}
right_2_activate
{
	trigger right_2_activate
	{
		globalaccum 7 abort_if_not_bitset 2
		trigger tictactoe_circle circle_2
		globalaccum 7 bitset 2
	}
}
right_3_activate
{
	trigger right_3_activate
	{
		globalaccum 7 abort_if_not_bitset 3
		trigger tictactoe_circle circle_3
		globalaccum 7 bitset 3
	}
}
right_4_activate
{
	trigger right_4_activate
	{
		globalaccum 7 abort_if_not_bitset 4
		trigger tictactoe_circle circle_4
		globalaccum 7 bitset 4
	}
}
right_5_activate
{
	trigger right_5_activate
	{
		globalaccum 7 abort_if_not_bitset 5
		trigger tictactoe_circle circle_5
		globalaccum 7 bitset 5
	}
}
right_6_activate
{
	trigger right_6_activate
	{
		globalaccum 7 abort_if_not_bitset 6
		trigger tictactoe_circle circle_6
		globalaccum 7 bitset 6
	}
}
right_7_activate
{
	trigger right_7_activate
	{
		globalaccum 7 abort_if_not_bitset 7
		trigger tictactoe_circle circle_7
		globalaccum 7 bitset 7
	}
}
right_8_activate
{
	trigger right_8_activate
	{
		globalaccum 7 abort_if_not_bitset 8
		trigger tictactoe_circle circle_8
		globalaccum 7 bitset 8
	}
}
right_9_activate
{
	trigger right_9_activate
	{
		globalaccum 7 abort_if_not_bitset 9
		trigger tictactoe_circle circle_9
		globalaccum 7 bitset 9
	}
}
tictactoe_cross
{
	trigger cross_1
	{
		setstate cross_1 default
		accum 3 inc 1
		accum 4 inc 1
		accum 8 inc 1
	}
	trigger cross_2
	{
		setstate cross_2 default
		accum 3 inc 1
		accum 5 inc 1
	}
	trigger cross_3
	{
		setstate cross_3 default
		accum 3 inc 1
		accum 6 inc 1
		accum 7 inc 1
	}
	trigger cross_4
	{
		setstate cross_4 default
		accum 2 inc 1
		accum 4 inc 1
	}
	trigger cross_5
	{
		setstate cross_5 default
		accum 2 inc 1
		accum 5 inc 1
		accum 7 inc 1
		accum 8 inc 1
	}
	trigger cross_6
	{
		setstate cross_6 default
		accum 2 inc 1
		accum 6 inc 1
	}
	trigger cross_7
	{
		setstate cross_7 default
		accum 1 inc 1
		accum 4 inc 1
		accum 7 inc 1
	}
	trigger cross_8
	{
		setstate cross_8 default
		accum 1 inc 1
		accum 5 inc 1
	}
	trigger cross_9
	{
		setstate cross_9 default
		accum 1 inc 1
		accum 6 inc 1
		accum 8 inc 1
	}
	trigger reset
	{
		accum 1 set 0
		accum 2 set 0
		accum 3 set 0
		accum 4 set 0
		accum 5 set 0
		accum 6 set 0
		accum 7 set 0
		accum 8 set 0
		setstate cross_1 invisible
		setstate cross_2 invisible
		setstate cross_3 invisible
		setstate cross_4 invisible
		setstate cross_5 invisible
		setstate cross_6 invisible
		setstate cross_7 invisible
		setstate cross_8 invisible
		setstate cross_9 invisible
	}
	trigger checkifwin
	{
		accum 1 trigger_if_equal 3 tictactoe_cross win
		accum 2 trigger_if_equal 3 tictactoe_cross win
		accum 3 trigger_if_equal 3 tictactoe_cross win
		accum 4 trigger_if_equal 3 tictactoe_cross win
		accum 5 trigger_if_equal 3 tictactoe_cross win
		accum 6 trigger_if_equal 3 tictactoe_cross win
		accum 7 trigger_if_equal 3 tictactoe_cross win
		accum 8 trigger_if_equal 3 tictactoe_cross win
		
	}
	trigger win
	{
		wm_announce "Crosses wins!"
		trigger self reset
	}
}
		
tictactoe_circle
{
	trigger circle_1
	{
		setstate circle_1 default
		accum 3 inc 1
		accum 4 inc 1
		accum 8 inc 1
	}
	trigger circle_2
	{
		setstate circle_2 default
		accum 3 inc 1
		accum 5 inc 1
	}
	trigger circle_3
	{
		setstate circle_3 default
		accum 3 inc 1
		accum 6 inc 1
		accum 7 inc 1
	}
	trigger circle_4
	{
		setstate circle_4 default
		accum 2 inc 1
		accum 4 inc 1
	}
	trigger circle_5
	{
		setstate circle_5 default
		accum 2 inc 1
		accum 5 inc 1
		accum 7 inc 1
		accum 8 inc 1
	}
	trigger circle_6
	{
		setstate circle_6 default
		accum 2 inc 1
		accum 6 inc 1
	}
	trigger circle_7
	{
		setstate circle_7 default
		accum 1 inc 1
		accum 4 inc 1
		accum 7 inc 1
	}
	trigger circle_8
	{
		setstate circle_8 default
		accum 1 inc 1
		accum 5 inc 1
	}
	trigger circle_9
	{
		setstate circle_9 default
		accum 1 inc 1
		accum 6 inc 1
		accum 8 inc 1
	}
	trigger reset
	{
		accum 1 set 0
		accum 2 set 0
		accum 3 set 0
		accum 4 set 0
		accum 5 set 0
		accum 6 set 0
		accum 7 set 0
		accum 8 set 0
		setstate circle_1 invisible
		setstate circle_2 invisible
		setstate circle_3 invisible
		setstate circle_4 invisible
		setstate circle_5 invisible
		setstate circle_6 invisible
		setstate circle_7 invisible
		setstate circle_8 invisible
		setstate circle_9 invisible
	}
	trigger checkifwin
	{
		accum 1 trigger_if_equal 3 tictactoe_circle win
		accum 2 trigger_if_equal 3 tictactoe_circle win
		accum 3 trigger_if_equal 3 tictactoe_circle win
		accum 4 trigger_if_equal 3 tictactoe_circle win
		accum 5 trigger_if_equal 3 tictactoe_circle win
		accum 6 trigger_if_equal 3 tictactoe_circle win
		accum 7 trigger_if_equal 3 tictactoe_circle win
		accum 8 trigger_if_equal 3 tictactoe_circle win
	}
	trigger win
	{
		wm_announce "Circles wins!"
		trigger self reset
	}
}

Help me out there please


(isbowhten) #22

do accums start with a value of 0 if you dont set them 0 in the spawn event?
i am not sure if i understood the triggers…
do they incrfease the 8 accums which represent the first row, seciond row… etc.?


(isbowhten) #23

did you read my other post which i say that target_script_trigger entities have bugs?
if you used one, just make another useless entity out of it and i would set all accums to 0 in the spawn event… if that doesnt help i have no idea…


(murka) #24

The bug is… you use abort_if_!!!NOT!!!_bitset, which should be just abort_if_bitset(read: abort if bit has been set ie accum 1 bitset 1)

You don’t actually need a globalaccum, but use accum and after each block when you do globalaccum 7 bitset x(change this to accum 1 bitset x)add a line trigger sth(the other symbols place on the field block) bitset and add a trigger bitset block in each symbol(something like i mentioned before). Like this:
edit: the abort_if_bitset 1-9 and bitset 1-9 should be changed to 1 everywhere as i just replaced and forgot some obvious points.

left_1_activate
{
	trigger left_1_activate
	{
		accum 1 abort_if_bitset 1
		trigger tictactoe_cross cross_1
		accum 1 bitset 1
                trigger right_1 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
left_2_activate
{
	trigger left_2_activate
	{
		accum 1 abort_if_bitset 2
		trigger tictactoe_cross cross_2
		accum 1 bitset 2
                trigger right_2 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
left_3_activate
{
	trigger left_3_activate
	{
		accum 1 abort_if_bitset 3
		trigger tictactoe_cross cross_3
		accum 1 bitset 3
                trigger right_3 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
left_4_activate
{
	trigger left_4_activate
	{
		accum 1 abort_if_bitset 4
		trigger tictactoe_cross cross_4
		accum 1 bitset 4
                trigger right_4 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
left_5_activate
{
	trigger left_5_activate
	{
		accum 1 abort_if_bitset 5
		trigger tictactoe_cross cross_5
		accum 1 bitset 5
                trigger right_5 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
left_6_activate
{
	trigger left_6_activate
	{
		accum 1  abort_if_bitset 6
		trigger tictactoe_cross cross_6
		accum 1 bitset 6
                trigger right_6 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
left_7_activate
{
	trigger left_7_activate
	{
		accum 1  abort_if_bitset 7
		trigger tictactoe_cross cross_7
		accum 1 bitset 7
                trigger right_7 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
left_8_activate
{
	trigger left_8_activate
	{
		accum 1  abort_if_bitset 8
		trigger tictactoe_cross cross_8
		accum 1 bitset 8
                trigger right_8 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
left_9_activate
{
	trigger left_9_activate
	{
		accum 1  abort_if_bitset 9
		trigger tictactoe_cross cross_9
		accum 1 bitset 9
                trigger right_9 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
right_1_activate
{
	trigger right_1_activate
	{
		accum 1  abort_if_bitset 1
		trigger tictactoe_circle circle_1
		accum 1 bitset 1
                trigger left_1 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
right_2_activate
{
	trigger right_2_activate
	{
		accum 1  abort_if_bitset 2
		trigger tictactoe_circle circle_2
		accum 1 bitset 2
                trigger left_2 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
right_3_activate
{
	trigger right_3_activate
	{
		accum 1  abort_if_bitset 3
		trigger tictactoe_circle circle_3
		accum 1 bitset 3
                trigger left_3 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
right_4_activate
{
	trigger right_4_activate
	{
		accum 1  abort_if_bitset 4
		trigger tictactoe_circle circle_4
		accum 1 bitset 4
                trigger left_4 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
right_5_activate
{
	trigger right_5_activate
	{
		accum 1  abort_if_bitset 5
		trigger tictactoe_circle circle_5
		accum 1 bitset 5
                trigger left_5 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
right_6_activate
{
	trigger right_6_activate
	{
		accum 1  abort_if_bitset 6
		trigger tictactoe_circle circle_6
		accum 1 bitset 6
                trigger left_6 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
right_7_activate
{
	trigger right_7_activate
	{
		accum 1  abort_if_bitset 7
		trigger tictactoe_circle circle_7
		accum 1 bitset 7
                trigger left_7 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
right_8_activate
{
	trigger right_8_activate
	{
		accum 1  abort_if_not_bitset 8
		trigger tictactoe_circle circle_8
		accum 1 bitset 8
                trigger left_8 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
right_9_activate
{
	trigger right_9_activate
	{
		accum 1  abort_if_bitset 9
		trigger tictactoe_circle circle_9
		accum 1 bitset 9
                trigger left_9 bitset
	}

        trigger bitset
        {
                accum 1 bitset 1
        }
}
tictactoe_cross
{
	trigger cross_1
	{
		setstate cross_1 default
		accum 3 inc 1
		accum 4 inc 1
		accum 8 inc 1
	}
	trigger cross_2
	{
		setstate cross_2 default
		accum 3 inc 1
		accum 5 inc 1
	}
	trigger cross_3
	{
		setstate cross_3 default
		accum 3 inc 1
		accum 6 inc 1
		accum 7 inc 1
	}
	trigger cross_4
	{
		setstate cross_4 default
		accum 2 inc 1
		accum 4 inc 1
	}
	trigger cross_5
	{
		setstate cross_5 default
		accum 2 inc 1
		accum 5 inc 1
		accum 7 inc 1
		accum 8 inc 1
	}
	trigger cross_6
	{
		setstate cross_6 default
		accum 2 inc 1
		accum 6 inc 1
	}
	trigger cross_7
	{
		setstate cross_7 default
		accum 1 inc 1
		accum 4 inc 1
		accum 7 inc 1
	}
	trigger cross_8
	{
		setstate cross_8 default
		accum 1 inc 1
		accum 5 inc 1
	}
	trigger cross_9
	{
		setstate cross_9 default
		accum 1 inc 1
		accum 6 inc 1
		accum 8 inc 1
	}
	trigger reset
	{
		accum 1 set 0
		accum 2 set 0
		accum 3 set 0
		accum 4 set 0
		accum 5 set 0
		accum 6 set 0
		accum 7 set 0
		accum 8 set 0
		setstate cross_1 invisible
		setstate cross_2 invisible
		setstate cross_3 invisible
		setstate cross_4 invisible
		setstate cross_5 invisible
		setstate cross_6 invisible
		setstate cross_7 invisible
		setstate cross_8 invisible
		setstate cross_9 invisible
	}
	trigger checkifwin
	{
		accum 1 trigger_if_equal 3 tictactoe_cross win
		accum 2 trigger_if_equal 3 tictactoe_cross win
		accum 3 trigger_if_equal 3 tictactoe_cross win
		accum 4 trigger_if_equal 3 tictactoe_cross win
		accum 5 trigger_if_equal 3 tictactoe_cross win
		accum 6 trigger_if_equal 3 tictactoe_cross win
		accum 7 trigger_if_equal 3 tictactoe_cross win
		accum 8 trigger_if_equal 3 tictactoe_cross win
		
	}
	trigger win
	{
		wm_announce "Crosses wins!"
		trigger self reset
	}
}
		
tictactoe_circle
{
	trigger circle_1
	{
		setstate circle_1 default
		accum 3 inc 1
		accum 4 inc 1
		accum 8 inc 1
	}
	trigger circle_2
	{
		setstate circle_2 default
		accum 3 inc 1
		accum 5 inc 1
	}
	trigger circle_3
	{
		setstate circle_3 default
		accum 3 inc 1
		accum 6 inc 1
		accum 7 inc 1
	}
	trigger circle_4
	{
		setstate circle_4 default
		accum 2 inc 1
		accum 4 inc 1
	}
	trigger circle_5
	{
		setstate circle_5 default
		accum 2 inc 1
		accum 5 inc 1
		accum 7 inc 1
		accum 8 inc 1
	}
	trigger circle_6
	{
		setstate circle_6 default
		accum 2 inc 1
		accum 6 inc 1
	}
	trigger circle_7
	{
		setstate circle_7 default
		accum 1 inc 1
		accum 4 inc 1
		accum 7 inc 1
	}
	trigger circle_8
	{
		setstate circle_8 default
		accum 1 inc 1
		accum 5 inc 1
	}
	trigger circle_9
	{
		setstate circle_9 default
		accum 1 inc 1
		accum 6 inc 1
		accum 8 inc 1
	}
	trigger reset
	{
		accum 1 set 0
		accum 2 set 0
		accum 3 set 0
		accum 4 set 0
		accum 5 set 0
		accum 6 set 0
		accum 7 set 0
		accum 8 set 0
		setstate circle_1 invisible
		setstate circle_2 invisible
		setstate circle_3 invisible
		setstate circle_4 invisible
		setstate circle_5 invisible
		setstate circle_6 invisible
		setstate circle_7 invisible
		setstate circle_8 invisible
		setstate circle_9 invisible
	}
	trigger checkifwin
	{
		accum 1 trigger_if_equal 3 tictactoe_circle win
		accum 2 trigger_if_equal 3 tictactoe_circle win
		accum 3 trigger_if_equal 3 tictactoe_circle win
		accum 4 trigger_if_equal 3 tictactoe_circle win
		accum 5 trigger_if_equal 3 tictactoe_circle win
		accum 6 trigger_if_equal 3 tictactoe_circle win
		accum 7 trigger_if_equal 3 tictactoe_circle win
		accum 8 trigger_if_equal 3 tictactoe_circle win
	}
	trigger win
	{
		wm_announce "Circles wins!"
		trigger self reset
	}
}

Ahh, finally finished!


(sQynor) #25

I get an error saying “Trigger unknown tictactoe_cross”
“Trigger unknown right_1”

I’m really sick of it now…

EDIT: i fixed the Trigger unknown right_1

it had to be trigger right_1 activate

EDIT2: problem solved, i made 2 script_movers with nodraw texture at the top of my map. gave them scriptname tictactoe_Cross and now it works.
Murka’s script aint perfect yet. so i fixed it and every button also has a BITreset :>
thanks murka :slight_smile:

now i still need a few things like i got this picture of a cross which is white with a black cross.
I want the shader to make it look like the white aint there.

Any idea?


(murka) #26

In photoshop(or any other imaging program) make an alpha channel and then use some shader code, i can’t remember what it was.


(sQynor) #27

Well, nvm…

It’s all working now :> i might release my map today :slight_smile:


(murka) #28

I look forward to it as i’m a big fan of TJ.


(sQynor) #29

I released Beta1 with 8 gammas, a time attack and tictactoe.

A few bugs in textures and a few bugs in the time attack ( well if everyone is save / loading in the arena… that’s not ment for it. )

And that tictactoe error :>

But i fixed it… and the TY list… cause mose people couldn’t read it