RND > Schussungenauigkeit

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

rctuner

Betreff: RND > Schussungenauigkeit

BeitragFr, Sep 29, 2006 19:32
Antworten mit Zitat
Benutzer-Profile anzeigen
hallo,

ich hab folgenden code:

EnGU=Rnd(-1,1) ; zufallszahlen mit max. -1,+1

RotateEntity sprites2\objs2,EntityPitch(player)+EnGU,EntityYaw(player)+EnGU,EntityRoll(player)+EnGU
; den schuss wie player drehen + EnGU

Damit möchte ich eine Schussungenauigkeit erziehlen. Nur hab ich jetzt das Problem, dass die Schussungenauigkeit nur von oben-links biss nach unten-rechts reicht.

Denn wenn EnGU z.B. -1 ist, wird der schuss -1 nach unten gedreht und -1 zurseite.

Wie kann ich das mit Ungenauigkeit so machen dass sie wirklich in alle richtungen geht?
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu

[AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB]

Blitzcoder

Newsposter

BeitragFr, Sep 29, 2006 19:50
Antworten mit Zitat
Benutzer-Profile anzeigen
Du nimmst eben 2 Werte. DU machst:
Code: [AUSKLAPPEN]

schussx=rnd(-1,1)
schussy=rnd(-1,1)


und dann eben
Code: [AUSKLAPPEN]

RotateEntity sprites2\objs2,EntityPitch(player)+schussx,EntityYaw(player)+schussy,EntityRoll(player)


Den z-Wert brauchst du nicht zu ändern, da da ja nur die Drehung der Kugel ist. Das bringt ja nicht, wenn sie um dien Z-Achse gedreht wird.

MfG Blitzcoder
P4 3 Ghz@3,55Ghz|GF 6600GT 256MB|Samsung 80GB | 2x Samsung 160GB|2048MB DDR-400 RAM|6 Mbit Flatrate | Logitech G15 | Samsung 225BW-TFT | Ubuntu Gutsy Linux | Windows Vista | Desktop | Blog | CollIDE | Worklog
________________
|°°°°°°°°°°°°°°||'""|""\__,_
|______________ ||__ |__|__ |)
|(@) |(@)"""**|(@)(@)****|(@)

Black Spider

BeitragFr, Sep 29, 2006 20:34
Antworten mit Zitat
Benutzer-Profile anzeigen
sicher dass du mit tatsächlich fliegenden Kugeln arbeiten willst?
Camerapick wäre einfacher und schneller,
aber jedem das seine...

Kürzer wäre:
Code: [AUSKLAPPEN]

sprite\schussX = RND(-1,1)
sprite\schussY = RND(-1,1)
sprite\obj = CopyEntity(bullet_obj, camera)
PositionEntity sprite\obj,0,0,0
RotateEntity sprite\obj,sprite\schussX,sprite\schussY,0
EntityParent sprite\obj,0
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif

Blitzcoder

Newsposter

BeitragFr, Sep 29, 2006 20:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Meins war ja auch nur "Funktionsbeispiel" gedacht
P4 3 Ghz@3,55Ghz|GF 6600GT 256MB|Samsung 80GB | 2x Samsung 160GB|2048MB DDR-400 RAM|6 Mbit Flatrate | Logitech G15 | Samsung 225BW-TFT | Ubuntu Gutsy Linux | Windows Vista | Desktop | Blog | CollIDE | Worklog
________________
|°°°°°°°°°°°°°°||'""|""\__,_
|______________ ||__ |__|__ |)
|(@) |(@)"""**|(@)(@)****|(@)

D2006

Administrator

BeitragFr, Sep 29, 2006 20:55
Antworten mit Zitat
Benutzer-Profile anzeigen
da es echt keiner von euch hat, möchte ich noch kurz die liebe Raute erwähnen. RND liefert ja Kommazahlen, also braucht man zum Speichern Floats.

Code: [AUSKLAPPEN]
Also:
EnGU#
oder eben:
..\schussX#
..\schussY#


Vielleicht war euch das ja sowieso klar. Wollte es nur erwähnt haben.
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard
Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium
Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2

Blitzcoder

Newsposter

BeitragFr, Sep 29, 2006 22:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Lol, Dee. da habe ich eben wirklich nicht dran gedacht Wink
P4 3 Ghz@3,55Ghz|GF 6600GT 256MB|Samsung 80GB | 2x Samsung 160GB|2048MB DDR-400 RAM|6 Mbit Flatrate | Logitech G15 | Samsung 225BW-TFT | Ubuntu Gutsy Linux | Windows Vista | Desktop | Blog | CollIDE | Worklog
________________
|°°°°°°°°°°°°°°||'""|""\__,_
|______________ ||__ |__|__ |)
|(@) |(@)"""**|(@)(@)****|(@)

rctuner

BeitragFr, Sep 29, 2006 23:57
Antworten mit Zitat
Benutzer-Profile anzeigen
[quote="Blitzcoder"]Du nimmst eben 2 Werte. DU machst:
Code: [AUSKLAPPEN]

schussx=rnd(-1,1)
schussy=rnd(-1,1)


RND liefert doch pro schleifendurchlauf nur eine zahl, oder?
das heist schussx=schussy?!
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu

[AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB]
 

antome

!!! gesperrt !!!

BeitragFr, Sep 29, 2006 23:59
Antworten mit Zitat
Benutzer-Profile anzeigen
Nein, 2 verschiedene.
antome

Blitzcoder

Newsposter

BeitragSa, Sep 30, 2006 9:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Da muss noch ein
Code: [AUSKLAPPEN]
seedrnd millisecs()

hin.
P4 3 Ghz@3,55Ghz|GF 6600GT 256MB|Samsung 80GB | 2x Samsung 160GB|2048MB DDR-400 RAM|6 Mbit Flatrate | Logitech G15 | Samsung 225BW-TFT | Ubuntu Gutsy Linux | Windows Vista | Desktop | Blog | CollIDE | Worklog
________________
|°°°°°°°°°°°°°°||'""|""\__,_
|______________ ||__ |__|__ |)
|(@) |(@)"""**|(@)(@)****|(@)

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group