summaryrefslogtreecommitdiffhomepage
path: root/lib/felflame.rb
diff options
context:
space:
mode:
author_Tradam <[email protected]>2022-01-03 08:26:24 -0500
committerGitHub <[email protected]>2022-01-03 08:26:24 -0500
commita0f792d8feadf919290b8349dbc0eac143545927 (patch)
treeee70c5357d5969caaed08446c32746e656b223e6 /lib/felflame.rb
parentb535a6b1bd8019dbeba17f3853b338383208c9b3 (diff)
downloadFelECS-v4.0.0.tar.gz
FelECS-v4.0.0.zip
Major 4.0 Update (#16)v4.0.04.0.0
See Changelog
Diffstat (limited to 'lib/felflame.rb')
-rw-r--r--lib/felflame.rb36
1 files changed, 22 insertions, 14 deletions
diff --git a/lib/felflame.rb b/lib/felflame.rb
index cf58990..21a6eaf 100644
--- a/lib/felflame.rb
+++ b/lib/felflame.rb
@@ -1,14 +1,17 @@
+# frozen_string_literal: true
+
require_relative 'felflame/entity_manager'
require_relative 'felflame/component_manager'
require_relative 'felflame/system_manager'
require_relative 'felflame/scene_manager'
require_relative 'felflame/stage_manager'
+require_relative 'felflame/order'
-require_relative "felflame/version"
+require_relative 'felflame/version'
# The FelFlame namespace where all its functionality resides under.
-class FelFlame
- class <<self
+module FelFlame
+ class << self
# :nocov:
# An alias for {FelFlame::Stage.call}. It executes a single frame in the game.
@@ -18,26 +21,28 @@ class FelFlame
# :nocov:
end
- # Creates and manages Entities. Allows accessing Entities using their {FelFlame::Entities#id ID}. Entities are just collections of Components.
+ # Creates and manages Entities. Entities are just collections of Components.
+ # You can use array methods directly on this class to access Entities.
class Entities; end
- # Creates component managers and allows accessing them them under the {FelFlame::Components} namespace as Constants
+ # Creates component managers and allows accessing them them under the {FelFlame::Components} namespace as Constants.
+ # You can use array methods directly on this class to access Component Managers.
#
# To see how component managers are used please look at the {FelFlame::ComponentManager} documentation.
- class Components; end
+ module Components; end
- # Creates an manages Systems. Systems are the logic of the game and do not contain any data within them.
- #
- # TODO: Improve Systems overview
+ # Creates and manages Systems. Systems are the logic of the game and do not contain any data within them. Any systems you create are accessable under the {FelFlame::Systems} namespace as Constants.
+ # You can use array methods directly on this class to access Systems.
class Systems; end
- # Creates and manages Scenes. Scenes are collections of Systems, and execute all the Systems when called upon.
- #
- # TODO: Improve Scenes overview
+ # Creates and manages Scenes. Scenes are collections of Systems, and execute all the Systems when called upon. Any scenes you create are accessable under the {FelFlame::Scenes} namespace as Constants.
class Scenes; end
- # Stores Scenes which you want to execute on each frame. When called upon will execute all Systems in the Scenes in the Stage and will execute them according to their priority order.
- class Stage; end
+ # Stores Scenes you add to it which you want to execute on each frame. When called upon will execute all Systems in the Scenes in the Stage and will execute them according to their priority order.
+ module Stage; end
+
+ # Sets the priority of a list of Systems or Scenes for you in the order you pass them to this class.
+ module Order; end
end
# An alias for {FelFlame}
@@ -57,3 +62,6 @@ FF::Scn = FelFlame::Scenes
# An alias for {FelFlame::Stage}
FF::Stg = FelFlame::Stage
+
+# An alias for {FelFlame::
+FF::Odr = FelFlame::Order