22#ifndef TETRAEDGE_GAME_IN_GAME_SCENE_H
23#define TETRAEDGE_GAME_IN_GAME_SCENE_H
25#include "common/array.h"
26#include "common/str.h"
27#include "common/hashmap.h"
29#include "tetraedge/game/object3d.h"
30#include "tetraedge/game/billboard.h"
31#include "tetraedge/game/youki_manager.h"
33#include "tetraedge/te/te_act_zone.h"
34#include "tetraedge/te/te_bezier_curve.h"
35#include "tetraedge/te/te_free_move_zone.h"
36#include "tetraedge/te/te_scene.h"
37#include "tetraedge/te/te_light.h"
38#include "tetraedge/te/te_lua_gui.h"
39#include "tetraedge/te/te_particle.h"
40#include "tetraedge/te/te_pick_mesh2.h"
45class CharactersShadow;
95 static const int MAX_FIRE;
96 static const int MAX_SNOW;
97 static const int MAX_SMOKE;
98 static const float DUREE_MAX_FIRE;
99 static const float SCALE_FIRE;
100 static const int MAX_FLAKE;
101 static const float DUREE_MIN_FLAKE;
102 static const float DUREE_MAX_FLAKE;
103 static const float SCALE_FLAKE;
104 static const float DEPTH_MAX_FLAKE;
113 Flamme() : _needsFires(
false), _addFireOnUpdate(
false) {};
122 bool _addFireOnUpdate;
145 static float angularDistance(
float a1,
float a2);
146 bool aroundAnchorZone(
const AnchorZone *zone);
151 virtual void close()
override;
155 void deleteAllCallback();
161 virtual void draw()
override;
164 void drawReflection();
172 void freeSceneObjects();
217 void onMainWindowSizeChanged();
219 void playVerticalScrolling(
float time);
225 void setVisibleMarker(
const Common::String &markerName,
bool val);
229 void unloadSpriteLayouts();
230 void update()
override;
234 void updateViewport(
int ival);
239 TeLuaGUI &bgGui() {
return _bgGui; }
240 TeLuaGUI &hitObjectGui() {
return _hitObjectGui; }
241 TeLuaGUI &markerGui() {
return _markerGui; }
245 float shadowFarPlane()
const {
return _shadowFarPlane; }
246 float shadowNearPlane()
const {
return _shadowNearPlane; }
247 float shadowFov()
const {
return _shadowFov; }
248 const TeColor &shadowColor()
const {
return _shadowColor; }
249 int shadowLightNo()
const {
return _shadowLightNo; }
250 CharactersShadow *charactersShadow() {
return _charactersShadow; }
252 TeIntrusivePtr<TeBezierCurve> curve() {
return _curve; }
253 void setCurve(TeIntrusivePtr<TeBezierCurve> &c) { _curve = c; }
259 void setWaitTime(
double usecs) { _waitTime = usecs; }
260 TeTimer &waitTimeTimer() {
return _waitTimeTimer; }
269 YoukiManager &youkiManager() {
return _youkiManager; }
273 CharactersShadow *_charactersShadow;
274 TeColor _shadowColor;
275 float _shadowFarPlane;
276 float _shadowNearPlane;
280 TeTimer _waitTimeTimer;
309 TeIntrusivePtr<TeModel> _playerCharacterModel;
310 TeIntrusivePtr<TeBezierCurve> _curve;
314 TeLuaGUI _hitObjectGui;
318 TeVector2f32 _scrollOffset;
319 TeVector2f32 _scrollScale;
320 TeVector2f32 _viewportSize;
325 static bool _collisionSlide;
329 YoukiManager _youkiManager;
330 TeTimer _verticalScrollTimer;
331 float _verticalScrollTime;
332 bool _verticalScrollPlaying;
void push_back(const T &element)
Definition: array.h:181
Definition: billboard.h:35
Definition: character.h:41
Definition: in_game_scene.h:127
Definition: in_game_scene.h:48
Definition: in_game_scene_xml_parser.h:34
Definition: object3d.h:35
Definition: te_color.h:30
Definition: te_curve_anim2.h:36
Definition: te_free_move_zone.h:57
Definition: te_intrusive_ptr.h:31
Definition: te_layout.h:35
Definition: te_light.h:39
Definition: te_lua_gui.h:51
Definition: te_marker.h:32
Definition: te_model.h:44
Definition: te_pick_mesh2.h:32
Definition: te_quaternion.h:32
Definition: te_scene.h:35
Definition: te_sprite_layout.h:30
Definition: te_vector2f32.h:32
Definition: te_vector3f32.h:33
Definition: tetraedge.h:65
Definition: in_game_scene.h:71
Definition: in_game_scene.h:54
Definition: in_game_scene.h:61
Definition: in_game_scene.h:88
Definition: in_game_scene.h:106
Definition: in_game_scene.h:112
Definition: in_game_scene.h:78
Definition: in_game_scene.h:131
Definition: in_game_scene.h:66
Definition: in_game_scene.h:83