Project Arrhythmia
A video game developed by Vitamin Games.
Loading...
Searching...
No Matches
ObjectManager Class Reference

This class manages the game objects in the beatmap. More...

+ Inheritance diagram for ObjectManager:

Classes

struct  ObjectsToDelete
 

Public Member Functions

void KillAllParentChains ()
 
void InitSpawnAndKillSequence (float _songLength)
 
void ReGenSeed ()
 
void RefreshObjectData (int _i)
 
void RefreshObjectData (string _id)
 
void InitObjectData (string _id, int _i)
 
void InitParentChain (string _id, int _i)
 
void SetupMaterial (ref MeshRenderer _meshRenderer, int _gradientType)
 
void InitVisual (string _id, int _i)
 
void InitKeyframes (string _objID, int _i)
 
void TerminateObject (ObjectSelection _selection)
 
void UpdatePrefabInstanceLite (string _instID)
 
void UpdatePrefabInstance (string _instID)
 
void UpdateObjectsForAll (string _prefabID)
 
void UpdateObjectKeyframes (ObjectSelection _selection)
 
void UpdateObject (ObjectSelection _selection, bool _allInstances=false)
 
void UpdateObjectDeep (string _ID, int _Index)
 
void UpdateObjectBaseLite (ObjectSelection _selection)
 
List< ObjectSelection > AddExpandedPrefabToLevel (DataManager.GameData.PrefabObject _obj)
 
List< ObjectSelection > AddPrefabToLevel (DataManager.GameData.PrefabObject _obj)
 
void PurgeObjects ()
 
void PurgeObjectsMini ()
 
bool isFirstKeyframe (int _index)
 
bool isLastKeyframe (int _index, int _count)
 

Static Public Member Functions

static int KeyframeOffsetFromTime (float _time)
 
static float ClampToKeyframeOffset (float _time)
 

Public Attributes

int recycledTotal = 0
 
int totalLiveObjectsAbs = 0
 
int totalLiveObjects = 0
 
int seed = 0
 
GameObject[] parentPrefabs = new GameObject[MAX_OBJ_DEPTH]
 
bool UseOldText = false
 
Material Material_Default
 
Material Material_Gradient
 
Shader Gradient_Shader
 
int colorID
 
List< ObjectHelpers.GameObjectRefLiveObjectRefs = new List<ObjectHelpers.GameObjectRef>()
 
List< Transform > SpawnedParentChains = new List<Transform>()
 
GameObject StandardObjectRoot
 
List< ObjectHelpers.ObjectPrefabHolderobjectPrefabs = new List<ObjectHelpers.ObjectPrefabHolder>()
 
Sequence SpawnSequence
 
Sequence KillSequence
 
Dictionary< string, ObjectHelpers.GameObjectRefbeatmapGameObjects = new Dictionary<string, ObjectHelpers.GameObjectRef>()
 

Static Public Attributes

static ObjectManager inst
 
const int MAX_SPAWNS_PER_FRAME = 64
 
const int MAX_OBJ_DEPTH = 16
 
const float BUFFER_TIME = 0.01f
 
const float DEPTH_MULT = 0.1f
 
const float DEPTH_MULT_PARENT = 0.0005f
 

Private Member Functions

void GenerateParentObjects ()
 Only use to generate Parent Objects.
 
void Awake ()
 
ObjectHelpers.GameObjectRef CreateObjectData (int _i)
 
void HandleTextOriginSetup (int _i, int _shape, int _shapeOption, Transform _childObj)
 
void HandlePrefabOffsetKeyframes (int _i, float _songLength)
 
void HandleParentKeyframes (int _i, int _parentCount, float _songLength)
 
void HandleObjectKeyframes (int _i, float _startTime, string _objID)
 

Private Attributes

Random.State oldState
 
LocalKeyword localKeyRadial
 
LocalKeyword localKeyLinear
 

Detailed Description

This class manages the game objects in the beatmap.

It is responsible for initializing and updating the parent chain and visual of each beatmap object. The class provides functions to spawn and initialize objects, update their parent chain and visual, and handle their behavior in the editor. It also contains a list of all spawned parent chains and a dictionary of all beatmap game objects.


The documentation for this class was generated from the following file: