[032] Prototype Framework
[032] Prototype Framework
[18h] Managable Systems using C# Interface Logic
[May 14] 5h - Planning the Functions
[May 15] 4h - 5 Functions
[May 16] 2h - Player and Enemies
[May 17] 3h - Damage and Bullets
[May 18] 3h - Callables and Target
[May 20] 1h - Upload
# func alive() -> void: # initial load if has save
# func start() -> void: # start / unpause
# func pause() -> void: # pause
# func reset() -> void: # reset / initial load if no save
# func death() -> void: # gameover
# parent scripts = max Readabilty & Modularity
# child scripts = max Optimization
# use of set for child variables
var target: Vector2:
set(val): Slime.target = val
# use of get for child variables
var near_position: Vector2:
get: return _slime_array[_near_index].position
# use of get for functions
var positions: Array[Vector2]:
get = _get_positions
func _get_positions() -> Array[Vector2]:
var active_positions: Array[Vector2]
for index in _slime_array.size():
if _slime_alive[index] == true:
active_positions.append(_slime_array[index].global_position)
return active_positions
# use of Signals to trigger parent functions
# use of Callable to capture parent data
var on_fire: Callable # Array[Vector2] = [position, target]
fire(on_fire.call() as Array[Vector2]) # currently not type safe
func fire(_data: Array[Vector2]) -> void:
_bullets.on_fire = Callable(func() -> Array[Vector2]: return [_player.position, _aim.position])
| Status | Released |
| Platforms | HTML5 |
| Author | QuietGodot |
| Made with | Godot |

Leave a comment
Log in with itch.io to leave a comment.