Gamestudio Links
Zorro Links
Newest Posts
Data from CSV not parsed correctly
by dr_panther. 05/06/24 18:50
Help with plotting multiple ZigZag
by degenerate_762. 04/30/24 23:23
M1 Oversampling
by 11honza11. 04/30/24 08:16
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
3 registered members (AndrewAMD, alibaba, VoroneTZ), 916 guests, and 2 spiders.
Key: Admin, Global Mod, Mod
Newest Members
firatv, wandaluciaia, Mega_Rod, EternallyCurious, howardR
19050 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Page 1 of 2 1 2
Aufzug, der sich hoch und runter bewegt #121196
04/03/07 12:53
04/03/07 12:53
Joined: Nov 2006
Posts: 116
benija Offline OP
Member
benija  Offline OP
Member

Joined: Nov 2006
Posts: 116
ich weiß niht, was ich noch machen soll...ich versuche seit stunden ein script für einen aufzug zu schrieben, der sich hoch und wieder runter bewegt.

action lift_hochfahren{
while(2){
my.z +=4*time_step;
wait(1);
}
wait(1);
while(2){
my.z-=4*time_step;
}

}


wo liegt mein fehler?

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 Offline

3D Artist
rvL_eXile  Offline

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: rvL_eXile] #121198
04/03/07 15:11
04/03/07 15:11
Joined: Nov 2006
Posts: 116
benija Offline OP
Member
benija  Offline OP
Member

Joined: Nov 2006
Posts: 116
Ne, also auch dein Script funktioniert nicht. Der aufzug fährt zwar noch oben, bleicht dann aber stehen und bewegt sich nicht mehr nch unten!

Re: Aufzug, der sich hoch und runter bewegt [Re: benija] #121199
04/03/07 16:15
04/03/07 16:15
Joined: Apr 2005
Posts: 1,058
Luzern
Nicolas_B Offline
Serious User
Nicolas_B  Offline
Serious User

Joined: Apr 2005
Posts: 1,058
Luzern
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 grösser als 200 ist fahre wieder runter
{
my.z-=4*time_step;
}

wait(1);
}



So sollte es gehen

Re: Aufzug, der sich hoch und runter bewegt [Re: Nicolas_B] #121200
04/03/07 16:28
04/03/07 16:28
Joined: Mar 2007
Posts: 47
Z
zydar Offline
Newbie
zydar  Offline
Newbie
Z

Joined: Mar 2007
Posts: 47
ich hab mal ne Frage:
gibt es while(2) ?
ich dachte
while(1) ist wahr und
while(0) ist falsch

Re: Aufzug, der sich hoch und runter bewegt [Re: zydar] #121201
04/03/07 16:33
04/03/07 16:33
Joined: Apr 2005
Posts: 2,332
Germany, BaWü
aztec Offline

Expert
aztec  Offline

Expert

Joined: Apr 2005
Posts: 2,332
Germany, BaWü
ich glaub while(2) ist dann wieder false


Visit:
schwenkschuster-design.de
Re: Aufzug, der sich hoch und runter bewegt [Re: aztec] #121202
04/03/07 17:42
04/03/07 17:42
Joined: Apr 2005
Posts: 1,058
Luzern
Nicolas_B Offline
Serious User
Nicolas_B  Offline
Serious User

Joined: Apr 2005
Posts: 1,058
Luzern
nimm doch einfach while (1) dan ist es sicher positiv

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 Offline

3D Artist
rvL_eXile  Offline

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 Offline
Member
MikeS  Offline
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.
Re: Aufzug, der sich hoch und runter bewegt [Re: MikeS] #121205
04/03/07 18:24
04/03/07 18:24
Joined: Jul 2002
Posts: 4,436
Germany, Luebeck
Xarthor Offline
Expert
Xarthor  Offline
Expert

Joined: Jul 2002
Posts: 4,436
Germany, Luebeck
Nur damit die while(0) while(1) while(2) frage hier nicht ungeklärt im raum steht:
while(ausdruck) { }
Dies ist eine schleife die solange ausgeführt wird bis der "ausdruck" == "false" ist.
"false" kann sein == 0, also würde while(0) nicht durchlaufen werden.

jede andere zahl ist "true"
Also es macht keine unterschied ob du while(1), while(2) oder while(25) schreibst.

Page 1 of 2 1 2

Moderated by  HeelX, Lukas, rayp, Rei_Ayanami, Superku, Tobias, TWO, VeT 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1