Coderproblem

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

AMD

Betreff: Coderproblem

BeitragSa, Feb 24, 2007 16:59
Antworten mit Zitat
Benutzer-Profile anzeigen
hi
ich mah grad so n kleines 3d game und da kann ma mit nem flugzeug fliegen und man kann auch schießen aber mein problem ist immer wenn ich dann schhießen tu dann fliegt der schuss immer nur in eine richtung aber ich will das er immer vom flugzeug vorne rauskommt der schuss und auch wenn sich das flugzeug dreht will ich das der schuss immer vorne rauskommt und gerade nach vorne fliegt und net imma nach links oder so (ich hoffe des habt ihe etzt verstanden^^)

code:
Graphics3D 640,480,32,1
SetBuffer BackBuffer()
camera=CreateCamera()
PositionEntity camera,1,1,1
light=CreateLight()
RotateEntity light,0,90,0

;SchussFunktion
Type shoot
Field bullet
End Type

Global p.shoot
bullet1=CreateSphere(12)
EntityColor bullet1,255,0,0
HideEntity bullet1

Const scene=1,Objekt=2,car=3,ship=4,Wurfel=5,Schuss=6
Global bumm=7

terrain=LoadTerrain("terrain4.JPG")
ScaleEntity terrain,1,10,1
EntityType terrain,1
PositionEntity terrain,1,0,1
tex=LoadTexture("Gras.JPG")
EntityTexture terrain,tex


terraine=LoadTerrain("Terrain3.JPG")
TerrainDetail terraine,4000,True
ScaleEntity terraine,100000,1,100000
EntityType terraine,1
PositionEntity terraine,1,4.9,1
tex=LoadTexture("wasser.bmp")
EntityTexture terraine,tex
EntityAlpha terraine,0.5

Global Flugzeug=LoadMesh("747.3ds")
ScaleEntity Flugzeug,0.04,0.04,0.04
PositionEntity Flugzeug,1,5.5,3
TurnEntity Flugzeug,0,-100,0
EntityType Flugzeug,3
FlipMesh Flugzeug

Global Tanker=LoadMesh("Tanker.3ds")
ScaleEntity Tanker,10,10,10
PositionEntity Tanker,100,9,600
EntityType Tanker,7
FlipMesh Flugzeug

Boot=LoadMesh("Boot.3ds")
ScaleEntity Boot,0.1,0.1,0.1
PositionEntity Boot,100,0,600
EntityType Boot,4
FlipMesh Boot

cube=CreateCube()
ScaleEntity cube,50,50,50
EntityAlpha cube,0
PositionEntity cube,600,0,640
EntityType cube,5



While Not KeyHit(1)



RotateEntity Flugzeug,pitch#,yaw#,roll#
PointEntity camera,Flugzeug,0
PositionEntity camera,EntityX(Flugzeug),EntityY(Flugzeug),EntityZ(Flugzeug)-10
x#=EntityX(camera)
y#=EntityY(camera)
z#=EntityZ(camera)
terra_y#=TerrainY(terrain,x#,y#,z#)+5
PositionEntity camera,x#,terra_y#,z#

If KeyDown(31) Speedz#=Speedz#-.0002
MoveEntity Flugzeug,Speedx,Speedy,SpeedZ

If KeyDown(17) Speedz#=Speedz#+.0002
MoveEntity Flugzeug,SpeedX,SpeedY,SpeedZ


If KeyDown(30)=1 Then yaw#=yaw#+1
If KeyDown(32)=1 Then yaw#=yaw#-1
If KeyDown(208)=1 Then pitch#=pitch#-1
If KeyDown(200)=1 Then pitch#=pitch#+1


Collisions 1,2,2,2
Collisions 2,2,2,2
Collisions 3,2,2,2
Collisions 3,1,2,2
Collisions 4,2,2,2
Collisions 4,2,2,2
Collisions 5,2,2,1
Collisions 6,2,2,1


Collisions schuss,bumm,2,1



PositionEntity bullet1,EntityX(Flugzeug),EntityY(Flugzeug)+1.8,EntityZ(Flugzeug)
EntityType=6

Collisions ship,Wurfel,2,1

MoveEntity boot,0.09,0,0

If EntityCollided (boot,Wurfel) Then
TurnEntity boot,0,-0.09,0
MoveEntity boot,0.09,0,0
End If






If MouseHit(1)=1 Then
p.shoot=New shoot


p\bullet=CopyEntity(bullet1)
EntityType p\bullet,6
RotateEntity p\bullet,0,DeltaYaw(p\bullet,Flugzeug),0
End If

Updateshoot()
UpdateWorld
RenderWorld
Flip
Wend
End

Function UpdateShoot()



For p.shoot = Each shoot
If EntityCollided(p\bullet,bumm) Then
Delete p
MoveEntity Tanker,0,-1,0
End If
Next

For p.shoot = Each shoot

MoveEntity p\bullet,0,0,10
Next
End Function

Tankbuster

BeitragSa, Feb 24, 2007 17:05
Antworten mit Zitat
Benutzer-Profile anzeigen
so könntest du das machen.
Du musst immer den Schuss mit "rotateentity" in die richtung des Flugzeugs bringen!^^
Zitat:
;schuss erstellen
PositionEntity schuss,EntityX(flugzeug),EntityY(flugzeug),EntityZ(flugzeug)
RotateEntity schuss,EntityPitch(flugzeug),EntityYaw(flugzeug),EntityRoll(flugzeug)
;schuss bewegen
MoveEntity schuss,0,0,1
Twitter
Download Jewel Snake!
Windows|Android
 

AMD

BeitragSa, Feb 24, 2007 17:13
Antworten mit Zitat
Benutzer-Profile anzeigen
ah es geht
dank dir für die hilfe Smile

Tankbuster

BeitragSa, Feb 24, 2007 17:14
Antworten mit Zitat
Benutzer-Profile anzeigen
JOJO gerngeschehen! Das selbe Problem hatte ich am Anfang auch^^
Twitter
Download Jewel Snake!
Windows|Android

skey-z

BeitragSa, Feb 24, 2007 17:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Setzt die Collissions vor die Schleife, du brauchst sie nur einmal zu definieren und nicht in jedem Schleifendurchlauf
Awards:
Coffee's Monatswettbewerb Feb. 08: 1. Platz
BAC#57: 2. Platz
Twitter
 

AMD

BeitragSa, Feb 24, 2007 18:15
Antworten mit Zitat
Benutzer-Profile anzeigen
wie meinste des?
 

AMD

BeitragSa, Feb 24, 2007 18:16
Antworten mit Zitat
Benutzer-Profile anzeigen
achja könnt ihr mir noch nen tipp geben wie ich des mach weil ich kann ja da n tanker abschießen aber weil ich etzt so gemacht hab dass ich den abschiesen kann kann ich ach durch den tanker durchfliegen könnt ihr mir nen tipp geben wie ich net durchfliegen kann aber trotzdem noch abschießen kann?

Tankbuster

BeitragSa, Feb 24, 2007 18:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Er meint, das du das:
Zitat:
Collisions 1,2,2,2
Collisions 2,2,2,2
Collisions 3,2,2,2
Collisions 3,1,2,2
Collisions 4,2,2,2
Collisions 4,2,2,2
Collisions 5,2,2,1
Collisions 6,2,2,1
Collisions schuss,bumm,2,1

nicht in die While-Schleife stecken musst! Kannst du einfach nur 1 mal davorschreiben
Twitter
Download Jewel Snake!
Windows|Android
 

AMD

BeitragSa, Feb 24, 2007 18:19
Antworten mit Zitat
Benutzer-Profile anzeigen
aso ja aber habt ihr ne lösung für mein anderes problem weiter oben?

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group