Aufzug Problem
Übersicht

IonPainterBetreff: Aufzug Problem |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Einfach mal Code ausführen und testen. Wie bekomm ihs hin das Die Kugel auch nach oben bewegt werden kann. Hab zwar schon Lösungsansätze das sind aber übelste Hacks (und sie funzen nicht ![]() ![]() Wichtig ist: Der Spieler muß sich auch unter den Aufzug stellen könnn wenn er oben ist also eine Positionierung auf den Aufzug scheidet aus... Code: [AUSKLAPPEN] Graphics3D 800, 600, 32, 2 SetBuffer BackBuffer() Kamera = CreateCamera() Licht = CreateLight(1, Kamera) TranslateEntity Kamera, 0, 2,-15 Aufzug = CreateCube() EntityColor Aufzug, 0, 255, 0 ScaleEntity Aufzug, 2, 0.125, 2 EntityType Aufzug, 1 Spieler = CreateSphere() EntityColor Spieler, 196, 255, 0 ScaleEntity Spieler, .5, .5, .5 EntityType Spieler, 2 EntityRadius Spieler, .5 MoveEntity Spieler, 0, 5, 0 FPS = CreateTimer(60) While Not KeyHit(1) If KeyDown(200) Then TranslateEntity Aufzug, 0, .01, 0 If KeyDown(208) Then TranslateEntity Aufzug, 0, -.01, 0 TranslateEntity Spieler, 0, -.1, 0 Collisions 2,1,2,2 UpdateWorld() RenderWorld() Text 10, 10, "IonPainter's Aufzug-Problem" Text 10, 30, "Pfeil-Auf - Bewegt Aufzug nach oben." Text 10, 40, "Pfeil-Ab - Bewegt Aufzug nah unten." WaitTimer FPS Flip Wend |
||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hm,
also den Aufzug würde ich eine CollisionsBox geben . Wenn man auf dem Aufzug steht deinem Entity diesen als Parent übergeben dann geht es mit rauf/runter . Beim drauf stellen auf den Aufzug kann man die Position lokal vor nehmen das man nicht mittendrin steht im Aufzugmesh . Wenn dein Entity den Aufzug als Parent hat kann man auch lokal x & z eingrenzen beim laufen . |
||
IonPainter |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hmm ja wäre auch eine idee, dann müsste ich allerdings die gravitation für den player im aufzum abstellen was zur folge hat das er im aufzug nicht springen kann ![]() |
||
ZaRaK |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
probier das ma
Code: [AUSKLAPPEN] Graphics3D 800, 600, 32, 2 SetBuffer BackBuffer() Kamera = CreateCamera() Licht = CreateLight(1, Kamera) TranslateEntity Kamera, 0, 2,-15 Aufzug = CreateCube() EntityColor Aufzug, 0, 255, 0 ScaleEntity Aufzug, 2, 0.125, 2 EntityType aufzug,2 Spieler = CreateSphere() EntityColor Spieler, 196, 255, 0 ScaleEntity Spieler, .5, .5, .5 EntityType spieler,1 EntityRadius Spieler, .5 MoveEntity Spieler, 0, 5, 0 FPS = CreateTimer(60) While Not KeyHit(1) If KeyDown(200) Then TranslateEntity Aufzug, 0, .1, 0 If KeyDown(208) Then TranslateEntity Aufzug, 0, -.1, 0 Collisions 1,2,2,3 If MeshesIntersect(spieler,aufzug) Then PositionEntity spieler, EntityX(aufzug),EntityY(aufzug)+.7,EntityZ(aufzug) If KeyHit(57) Then MoveEntity spieler,0,2,0 TranslateEntity Spieler, 0, -.1, 0 UpdateWorld() RenderWorld() Text 10, 10, "IonPainter's Aufzug-Problem" Text 10, 30, "Pfeil-Auf - Bewegt Aufzug nach oben." Text 10, 40, "Pfeil-Ab - Bewegt Aufzug nah unten." WaitTimer FPS Flip Wend allerdings habe ich keine ahnung, ob du aus dem aufzug wieder aussteigen kannst... müsstest dann am ende der fahrt halt irgendwas ändern, springen kann man zumindest mit der leertaste, bloss musste bei der abfahrt, also wenns runtergeht, das translateentity ändern, weil der spieler sonst fliegt, solang es runtergeht und du gesprungen bist ![]() |
||
IonPainter |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke für die Antworten, habs jetzt anders gelöst, ist zwar uch nicht die sauberste methode aber....
Code: [AUSKLAPPEN] Graphics3D 800, 600, 32, 2 SetBuffer BackBuffer() Kamera = CreateCamera() Licht = CreateLight(1, Kamera) TranslateEntity Kamera, 0, 2,-15 Aufzug = CreateCube() EntityColor Aufzug, 0, 255, 0 ScaleEntity Aufzug, 2, 0.125, 2 EntityType Aufzug, 1 EntityAlpha Aufzug, 0.5 Aufzug2 = CreateCube() EntityColor Aufzug2, 0, 255, 255 ScaleEntity Aufzug2, 2, 0.125, 2 EntityType Aufzug2, 3 TranslateEntity Aufzug2, 0, -.01, 0 EntityAlpha Aufzug2, 0.5 EntityParent Aufzug2, Aufzug Spieler = CreateSphere() EntityColor Spieler, 196, 255, 0 ScaleEntity Spieler, .5, .5, .5 EntityType Spieler, 2 EntityRadius Spieler, .5 MoveEntity Spieler, 0, 5, 0 ey# = EntityY(Spieler) FPS = CreateTimer(60) While Not KeyHit(1) If KeyDown(200) Then TranslateEntity Aufzug, 0, .01, 0 If KeyDown(208) Then TranslateEntity Aufzug, 0, -.01, 0 If KeyHit(57) Then TranslateEntity Spieler, 0, .25, 0 Collisions 2,1,2,2 Collisions 2,3,2,2 vy# = EntityY(Spieler) - ey# ey# = EntityY(Spieler) TranslateEntity Spieler, 0, vy# - 0.013, 0 UpdateWorld() If EntityCollided(Spieler, 3) Then TranslateEntity Spieler, 0, .022, 0 RenderWorld() Text 10, 10, "IonPainter's Aufzug-Problem" Text 10, 30, "Pfeil-Auf - Bewegt Aufzug nach oben." Text 10, 40, "Pfeil-Ab - Bewegt Aufzug nah unten." CameraProject Kamera, EntityX(Aufzug), EntityY(Aufzug), EntityZ(Aufzug) Text ProjectedX()+64, ProjectedY() - 5, "<-- Aufzug" CameraProject Kamera, EntityX(Aufzug2, 1), EntityY(Aufzug2, 1), EntityZ(Aufzug2, 1) Text ProjectedX()+64, ProjectedY() + 5, "<-- Aufzug2" WaitTimer FPS Flip wend |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group