|
Re: Aufzug, der sich hoch und runter bewegt
[Re: benija]
#121197
04/03/07 13:07
04/03/07 13:07
|
Joined: Apr 2005
Posts: 3,076 Germany, NRW
rvL_eXile
3D Artist
|
3D Artist
Joined: Apr 2005
Posts: 3,076
Germany, NRW
|
Sieht komisch aus dein Script... Schreib das mal so: Code:
action lift_hochfahren { while(1) { If(my.z<200) //Solange my.z kleiner als 200 ist fahre hoch { my.z +=4*time_step; } If (my.z>=200) //wenn my.z == 200 ist fahre wieder runter { my.z-=4*time_step; }
wait(1); }
cYa Sebastian
Tutorials: [Blender]Terrain creation ENG/GER [Blender]Low Poly Tree Modeling [GIMP]Create a Texture for Terrains CLICK HERE
|
|
|
Re: Aufzug, der sich hoch und runter bewegt
[Re: Nicolas_B]
#121203
04/03/07 18:00
04/03/07 18:00
|
Joined: Apr 2005
Posts: 3,076 Germany, NRW
rvL_eXile
3D Artist
|
3D Artist
Joined: Apr 2005
Posts: 3,076
Germany, NRW
|
Oder nimm den hier: Code:
Action Fahrstuhl { while(my.z<100) {
my.z +=4*time_step; if(my.z == 100) { break; } wait(1); } while(my.z < 101 && my.z>=0) { my.z-=4*time; If (my.z==0) { break; } wait(1); } }
Tutorials: [Blender]Terrain creation ENG/GER [Blender]Low Poly Tree Modeling [GIMP]Create a Texture for Terrains CLICK HERE
|
|
|
Re: Aufzug, der sich hoch und runter bewegt
[Re: rvL_eXile]
#121204
04/03/07 18:13
04/03/07 18:13
|
Joined: Mar 2007
Posts: 112
MikeS
Member
|
Member
Joined: Mar 2007
Posts: 112
|
dazu möcht ich auch was anmerken *gg* Auch ich beschäftige mich momentan aufs heftigste mit aufzügen, und mein script funktioniert jetzt endlich. Ich stells mal einfach hier mit rein :-))
Die basisidee dabei war:
ich wollte mehrere aufzüge in einem level erstellen, und dabei easy im wed die aufzüge "einstellen".
Ich habs über den ansatz gemacht, den aufzügen und ihren dazugehörigen knöpfen ein paar skills zu geben, die ich im wed einstellen kann, so dass jeder knopf weiß zu welchem aufzug er gehört.
Mann muss hierbei nur eine einzige "Knopf entity" kreiren, und nur einen einzigen aufzug, alles ander machst du über wed.
Die besonderheit die ich gerade fertiggestellt hab, war die Knöpfe, die sich im aufzug befinden an der stelle festzumachen, an der sie sein sollen. *gg*
Schaus dir mal an, bei fragen gern PM
// Script Ele_movement.wdl // Beinhaltet alle Bewegungsbefehle für den Aufzug // sowie alle befehle für die Kontroll und Rufknöpfe //////////////////////////////////////////////////////////////////////////// entity* elevator; // definition of elevator entity entity* button_call; entity* button_control; //////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////// define Floor,SKILL1; // definition of Name Skill1 define Elevator_ID,Skill2; // definition of Name Skill2 define Elevator_call,Flag1; // definition of Name Flag1 define Elevator_controler, Flag2; define Elevator_control_attached, Flag3; ////////////////////////////////////////////////////////////// // uses Elevator_call,Floor, function event_touch_click_call_button() // function of entity Button_call { if (event_type == event_touch) { my.ambient = 100; } if (event_type == event_release) { my.ambient = 0; } if (event_type == event_click) // if clicked, move button,and set elevator_call to 1 { my.flag1 = on; // sets elevator_call to on my.x -= 5; sleep (0.5); my.x +=5; my.red = 255; my.blue = 255; my.green = 255; } } //uses elevator_controler, function event_touch_click_control_button() //function of elevator control button { if (event_type == event_touch) { my.ambient = 100; } if (event_type == event_release) { my.ambient = 0; } if (event_type == event_click) { my.flag2 = on; my.x -= 5; sleep (0.5); my.x += 5; my.red = 255; my.blue = 255; my.green = 255; } } //uses elevator_controler,elevator_id,floor, action elevator_calling { button_call = me; my.enable_release = on; my.enable_click = on; my.enable_touch = on; my.light = on; my.lightrange = 0; my.event = event_touch_click_call_button; while(1) { you = ent_next(NULL); while (you) { while(Your.flag2 == on) && (my.skill2 == your.skill2) && (my.skill1 == your.skill1) { my.flag1 = on; my.red = 255; my.blue = 255; my.green = 255; beep; while((my.z < elevator.z || my.z > elevator.z)&& (my.flag1 == on)) { wait(1); } your.flag2 = off; your.red = 0; your.green = 0; your.blue = 0; beep; wait (1); } wait(1); you = ent_next(you); //der hier hat nen error gebracht, weil in () nix drinn war glaub ich } you = ent_next(you); wait (1); } }
action elevator_control { var control_button_height_var; button_control = me; my.enable_release = on; my.enable_click = on; my.enable_touch = on; my.light = on; my.lightrange = 0; my.event = event_touch_click_control_button; while(1) { you = ent_next(NULL); while (you) { control_button_height_var = my.z - your.z; while(Your.flag3 == on) && (my.skill2 == your.skill2) { my.z = your.z + control_button_height_var; wait(1); } wait (1); wait(1); you = ent_next(you); } you = ent_next(you); wait (1); } }
// uses elevator_id,elevator_call,floor, action elevator_move
{
elevator = me;
while(1) { you = ent_next(NULL); while (you) { If(Your.flag1 == on) && (my.skill2 == your.skill2) && (my.z < your.z) { while(my.z < you.z) { my.z +=1*time; wait(1); } your.flag1 = 0; your.red = 0; your.green = 0; your.blue = 0; } If(Your.flag1 == on) && (my.skill2 == your.skill2) && (my.z > your.z) { while(my.z > your.z) { my.z -=1*time; wait(1); } your.flag1 = 0; your.red = 0; your.green = 0; your.blue = 0; } wait (1); you = ent_next(you);
}
you = ent_next(you);
wait(1);
}
}
Last edited by MikeS; 04/03/07 18:14.
|
|
|
|