Alright, here I go again.
I’ve made a switch that goes down and up (yay!) I’m sure it does this, as I’ve tested it. Also, I’ve made a door that opens and closes, and changes color accordingly. They work fine individually. Now, both are triggered by a target_script_trigger being targeted by a func_invisible user. Here are the keys/values/random bits and pieces.
The door:
{
"spawnflags" "2"
"targetname" "plane_norm_door"
"scriptname" "plane_norm_door"
"classname" "script_mover"
The door in red colorness:
{
"scriptname" "plane_red_door"
"targetname" "plane_red_door"
"spawnflags" "2"
"classname" "script_mover"
The lever itself:
{
"targetname" "lever_mover"
"scriptname" "lever_mover"
"spawnflags" "2"
"classname" "script_mover"
Lever path up!
{
"targetname" "lever_up"
"origin" "649 -761 189"
"classname" "path_corner"
"scriptname" "lever_up"
}
Lever path down!
{
"classname" "path_corner"
"origin" "649 -761 172"
"targetname" "lever_down"
"scriptname" "lever_down"
}
{
"classname" "func_invisible_user"
"targetname" "lever"
"cursorhint" "hint_button"
"scriptname" "lever"
"target" "lever_tst"
{
"classname" "target_script_trigger"
"origin" "648 -760 216"
"target" "lever_start"
"scriptname" "lever"
"targetname" "lever_tst"
}
And finally, the script:
lever
{
spawn
{
wait 200
trigger self open
accum 1 set 1
}
trigger activate
{
trigger self lever_start
}
trigger lever_start
{
trigger self close
}
trigger close
{
setstate plane_norm default
setstate plane_red invisible
trigger plane_red_door close
trigger plane_norm_door close
trigger lever_mover up
accum 1 set 1
}
trigger open
{
setstate plane_norm invisible
setstate plane_red default
trigger plane_red_door open
trigger plane_norm_door open
trigger lever_mover down
accum 1 set 0
}
}
lever_mover
{
spawn
{
wait 200
}
trigger up
{
gotomarker lever_up 50
}
trigger down
{
gotomarker lever_down 50
}
}
plane_red_door
{
spawn
{
wait 200
}
trigger open
{
faceangles 0 0 45 200
setstate plane_red_door default
}
trigger close
{
faceangles 0 0 0 200
setstate plane_red_door invisible
}
}
plane_norm_door
{
spawn
{
wait 200
}
trigger open
{
faceangles 0 0 45 200
setstate plane_norm_door invisible
}
trigger close
{
faceangles 0 0 0 200
setstate plane_norm_door default
}
}
Whew… that’s a lot of stuff.
Anyway, the door starts open and red just fine, and the lever is down. When I activate the lever, nothing happens except a console error “Warning: Entity Used Itself”. And as bad as I feel for that entity, I’m unsure which it is, much less if I can get it to a doctor so it will stop using itself, and use others, like a good member of the entity society should!
