right then!!!
i ended up goin out so it took a little longer than expected, it's bloody 5am GMT!!!
anyways i'll send u the map 2moro and the script but here's the script 4 now, i may as well make a new tut, no disrespect 2 the person that wrote the original but... hmmm...
another anyway... here it is
///////////////////
// //
// jjjjj k k //
// j k k //
// j kkk //
// j j k k //
// jjj k k //
// //
///////////////////
//here's all the bits needed to make your own elevator with no limit to the number of levels
//see --------->>> for where to add the script for the levels (note there are 5 areas needing the new script (
main:
// \\\ change this number if adding floors///
// vvv
level.levels = 3 //to be entered by the mapper/scripter of the map in question
level.indiangle = (180 / (level.levels - 1)) //note "indiangle" is "indicator angle" but shorter,
level.eleposold = 0 //will need to be changed to the starting floor of the elevator
level waittill spawn
thread elevator_prep
end
// Three Story Elevator !!!redefined!!!
//credit also goes to WACKO for the indicator and lights idea
/////////////////////////////////////////////////////
//__________________the beginning__________________//
/////////////////////////////////////////////////////
elevator_prep:
$elevator_button0 bind $elevator //joins all the associated entities to the elevator
$elevator_button1 bind $elevator
$elevator_button2 bind $elevator
$doorA_lt bind $elevator
$doorA_rt bind $elevator
$elight_in bind $elevator
$elevator time level.elespeed // sets the movement times
$doorA_lt speed 45
$doorA_rt speed 45
$door0_lt speed 48
$door0_rt speed 48
$door1_lt speed 48
$door1_rt speed 48
$door2_lt speed 48
$door2_rt speed 48
//-------->>> new doors set up in here
end
///////////////////////////////////////////////////
//__________________the calling__________________//
///////////////////////////////////////////////////
//setup for the ground floor (0)
call_floor0:
thread turn_triggers_off
level.eleposnew = 0
thread where_am_i
// $elevator loopsound lighthouse_run
$elevator moveto $way_floor0
$elevator waitmove
wait .5
thread doors_cycle0
// $elevator loopsound lighthouse_run wait
level.eleposold = 0
end
//setup for the 1st floor (1)
call_floor1:
thread turn_triggers_off
level.eleposnew = 1
thread where_am_i
// $elevator loopsound lighthouse_run
$elevator moveto $way_floor1
$elevator waitmove
wait 0.5
thread doors_cycle1
$elevator loopsound lighthouse_run wait
level.eleposold = 1
end
//--------------------------------------------------------------->>>
//setup for the 2nd floor (2) //-->>>
call_floor2: //-->>>
thread turn_triggers_off //-->>>
level.eleposnew = 2 //-->>>
thread where_am_i //-->>>
// $elevator loopsound lighthouse_run //-->>>
$elevator moveto $way_floor2 //-->>>
$elevator waitmove //-->>>
wait 0.5 //-->>>
thread doors_cycle2 //-->>>
$elevator loopsound lighthouse_run wait //-->>>
level.eleposold = 2 //-->>>
end //-->>>
//--------------------------------------------------------------->>> copy all this script and change the 2's to the new floor numbers
//////////////////////////////////////////////////
//__________________the motion__________________//
//////////////////////////////////////////////////
//elevator doors
doors_cycleA:
$elevator playsound lighthouse_lever
$doorA_lt moveSouth 48
$doorA_lt move
$doorA_rt moveNorth 48
$doorA_rt waitmove
wait 5
$elevator playsound lighthouse_lever
$doorA_lt moveNorth 48
$doorA_lt move
$doorA_rt moveSouth 48
$doorA_rt waitmove
$elevator playsound snd_ping
thread turn_triggers_on
end
//floor0 doors
doors_cycle0:
thread doors_cycleA
wait .1
$door0_lt moveSouth 48
$door0_lt move
$door0_rt moveNorth 48
$door0_rt move
wait 5
$door0_lt moveNorth 48
$door0_lt move
$door0_rt moveSouth 48
$door0_rt move
end
//floor1 doors
doors_cycle1:
thread doors_cycleA
wait .1
$door1_lt moveSouth 48
$door1_lt move
$door1_rt moveNorth 48
$door1_rt move
wait 5
$door1_lt moveNorth 48
$door1_lt move
$door1_rt moveSouth 48
$door1_rt move
end
//-------------------------------->>>
//floor2 doors //-->>>
doors_cycle2: //-->>>
thread doors_cycleA //-->>>
wait .1 //-->>>
$door2_lt moveSouth 48 //-->>>
$door2_lt move //-->>>
$door2_rt moveNorth 48 //-->>>
$door2_rt move //-->>>
wait 5 //-->>>
$door2_lt moveNorth 48 //-->>>
$door2_lt move //-->>>
$door2_rt moveSouth 48 //-->>>
$door2_rt move //-->>>
end //-->>>
//-------------------------------->>> AND copy all this script and change the 2's to the new floor numbers
//////////////////////////////////////////////////////
//__________________the tricky bit__________________//
//////////////////////////////////////////////////////
where_am_i:
if (level.eleposnew == level.eleposold)
{
$elevator time 0.25
}
else
if (level.eleposnew > level.eleposold)
{
level.distance = (level.eleposnew - level.eleposold)
$elevator time (level.distance * 5)
$floor_id time (level.distance * 5)
$floor_id rotateZdown (level.indiangle * level.distance)
$floor_id waitmove
}
else
if (level.eleposold > level.eleposnew)
{
level.distance = (level.eleposold - level.eleposnew)
$elevator time (level.distance * 5)
$floor_id time (level.distance * 5)
$floor_id rotateZup (level.indiangle * level.distance)
$floor_id waitmove
}
end
////////////////////////////////////////////////////
//__________________the triggers__________________//
////////////////////////////////////////////////////
//thread to disable all triggers
turn_triggers_off:
$button0 nottriggerable
$button1 nottriggerable
$button2 nottriggerable
//------>>>add all new triggers for buttons in here
$elevator_button0 nottriggerable
$elevator_button1 nottriggerable
$elevator_button2 nottriggerable
$elight_in light 1 0 0 10
$elight_out light 1 0 0 10
end
//thread to enable/re-enable all triggers
turn_triggers_on:
$button0 triggerable
$button1 triggerable
$button2 triggerable
//------>>>AND again in here
$elevator_button0 triggerable
$elevator_button1 triggerable
$elevator_button2 triggerable
$elight_in light 0 1 0 10
$elight_out light 0 1 0 10
end
//as said in the script this will work 4 a lift with however many levels with the mathematics already worked out,
//if you do want to add the indicator on it, then you will need to create it on an 180 degree arc with a central arrow,
//good luck peeps, anymore questions contact me on YAHOO MESSENGER
//i'll give you my bank details 4 all donations then

//BLOODY 5AM bedtime!!!