Platform játék
3D-s megjelenítés, véletlenszerű pályagenerálás, jutalmazó játékélmény
floaters.h fájlreferencia
#include "global.h"
#include "map.h"
#include "player.h"
#include "camera.h"
#include "auxiliary/auxSDL.h"

Ugrás a fájl forráskódjához.

Adatszerkezetek

struct  floater
 

Típusdefiníciók

typedef enum floaterType floaterType
 
typedef struct floater floater
 

Enumerációk

enum  floaterType { enemy, projectile }
 

Függvények

void freeFloaterList ()
 Felszabadítja az ellenségek és lövedékek listáját. Részletek...
 
void createEnemy ()
 A játékos közelében elhelyez egy új ellenséget. Részletek...
 
void createProjectile (vector3D playerPosition, vector3D playerSize, vector2D *playerVelocity, mousePos mouse)
 Lövedék létrehozása. A megadott paraméterek függvényében a létrehozott lövedék az egér irányafele indul el. Részletek...
 
void moveFloaters (int deltaTime)
 Minden floaterre meghívja a szükséges mozgatási műveletet. Részletek...
 
void getFloatersRenderObject (int x, int y, renderObject *renderMap, int renderObjectsPerCube)
 Visszaadja az adott térfogatban lévő floater testeket. A sorrend nem elhanyagolható 3D-s testek rajzolásakor. Figyelni kell, melyik melyik másikat takarja el. Ezért kell "feldarabolni" őket. Itt még csak az egy adott m^3-ben lévő testek adatait adja oda a rajzoló függvénynek. Maga a feldarabolás már nem ennek a függvénynek a dolga. Részletek...
 

Adatszerkezetek dokumentációja

◆ floater

struct floater
Adatmezők
struct floater * next
vector2D position
float size
float slownessDebuffLeft
floaterType type
vector2D velocity

Típusdefiníciók dokumentációja

◆ floater

typedef struct floater floater

◆ floaterType

typedef enum floaterType floaterType

Enumerációk dokumentációja

◆ floaterType

Enumeráció-értékek
enemy 
projectile 

Függvények dokumentációja

◆ createEnemy()

void createEnemy ( )

A játékos közelében elhelyez egy új ellenséget.

◆ createProjectile()

void createProjectile ( vector3D  playerPosition,
vector3D  playerSize,
vector2D *  playerVelocity,
mousePos  mouse 
)

Lövedék létrehozása. A megadott paraméterek függvényében a létrehozott lövedék az egér irányafele indul el.

Paraméterek
helyvektora játékoshoz
térvektora játékos méretéhez
síkvektor*játékos sebesség (ezt Newton III. értelmében megváltoztatja
koordinátájaaz egérnek A játékost ellenkező irányba elmozdítja. A lövedék kezdősebbességéhez hozzáadódik a játékos sebessége.

◆ freeFloaterList()

void freeFloaterList ( )

Felszabadítja az ellenségek és lövedékek listáját.

◆ getFloatersRenderObject()

void getFloatersRenderObject ( int  x,
int  y,
renderObject *  renderMap,
int  renderObjectsPerCube 
)

Visszaadja az adott térfogatban lévő floater testeket. A sorrend nem elhanyagolható 3D-s testek rajzolásakor. Figyelni kell, melyik melyik másikat takarja el. Ezért kell "feldarabolni" őket. Itt még csak az egy adott m^3-ben lévő testek adatait adja oda a rajzoló függvénynek. Maga a feldarabolás már nem ennek a függvénynek a dolga.

Paraméterek
koordx
koordy
Hovakell írnia a testeket
Maxmennyit adhat vissza A feldarabolásról részletesebben a camera.c modulban.

◆ moveFloaters()

void moveFloaters ( int  deltaTime)

Minden floaterre meghívja a szükséges mozgatási műveletet.