RapidGameFramework
Reusable Godot managers for data-driven small games
Loading...
Searching...
No Matches
arcade_physics_manager Namespace Reference

Variables

 Vector2
 Create a reusable ball state dictionary.
 
 float
 Create a reusable projectile state dictionary for arcade/action games.
 
 ball
 
 paddle
 
 next
 Advance a ball and bounce from top/bottom playfield bounds.
 
 radius
 
 position
 Return left, right, or empty string when no side has scored.
 
 velocity
 
 y
 
 Callable
 Advance a list of ball dictionaries with the same bounds step.
 
 Array
 Split balls into scoring events and still-active balls.
 
 Dictionary
 Move a paddle by input direction (-1, 0, or 1) while clamped to the playfield.
 
 next_ball = post_step.call(index, next_ball)
 
 next_primary = step_ball(primary_ball, delta, playfield)
 
 String
 Collect scoring for a primary ball plus extras.
 
 primary_scoring_side = get_score_side(primary_ball, playfield)
 
 next_extra_balls = active_balls
 
 Rect2
 
 split_velocity = split_velocity.normalized() * split_speed
 
 size
 
 paddle_position
 
 rect
 
 closest
 
 paddle_size
 
 ball_position
 
 offset
 
 speed
 
 direction
 
 x
 
 owner_filters
 
 excluded_filters
 
 tx1 = tx2
 
 tx2 = temp_x
 
 t_min = maxf(t_min, tx1)
 
 t_max = minf(t_max, tx2)
 
 ty1 = ty2
 
 ty2 = temp_y
 

Variable Documentation

◆ Array

arcade_physics_manager.Array

Split balls into scoring events and still-active balls.

Advance projectile dictionaries, collect target hits, and remove expired shots.

Returns { scoring_sides, active_balls }, where scoring sides use the same left/right values as get_score_side(...).

Target rows support:

  • id: stable target id returned in hit rows.
  • paddle: paddle dictionary to test against.
  • owners: optional list of projectile owners that may hit this target.
  • exclude_owners: optional list of projectile owners ignored by this target.

Returns { active_projectiles, hits, out_of_bounds }.

Definition at line 65 of file arcade_physics_manager.gd.

◆ ball

arcade_physics_manager.ball

Definition at line 26 of file arcade_physics_manager.gd.

◆ ball_position

arcade_physics_manager.ball_position

Definition at line 291 of file arcade_physics_manager.gd.

◆ Callable

arcade_physics_manager.Callable

Advance a list of ball dictionaries with the same bounds step.

Advance a primary ball and any active multiball extras with one shared call.

Optional post_step(index, ball) can clamp, decorate, or normalize each ball while keeping scene-specific rules out of the shared physics manager.

The optional post_step(index, ball) callback receives index -1 for the primary ball and 0..n for extra balls.

Definition at line 64 of file arcade_physics_manager.gd.

◆ closest

arcade_physics_manager.closest

Definition at line 262 of file arcade_physics_manager.gd.

◆ Dictionary

arcade_physics_manager.Dictionary

Move a paddle by input direction (-1, 0, or 1) while clamped to the playfield.

Create a second ball from a source ball with offset vertical velocity.

Advance a projectile without applying collision response.

Create a horizontal projectile from a source entity, such as a paddle.

Definition at line 69 of file arcade_physics_manager.gd.

◆ direction

arcade_physics_manager.direction

Definition at line 294 of file arcade_physics_manager.gd.

◆ excluded_filters

arcade_physics_manager.excluded_filters

Definition at line 345 of file arcade_physics_manager.gd.

◆ float

arcade_physics_manager.float

Create a reusable projectile state dictionary for arcade/action games.

Bounce the ball from a paddle, adding vertical influence based on hit offset.

Return true when a projectile has left the playfield plus an optional margin.

Definition at line 25 of file arcade_physics_manager.gd.

◆ next

arcade_physics_manager.next

Advance a ball and bounce from top/bottom playfield bounds.

Definition at line 44 of file arcade_physics_manager.gd.

◆ next_ball

dict arcade_physics_manager.next_ball = post_step.call(index, next_ball)

Definition at line 71 of file arcade_physics_manager.gd.

◆ next_extra_balls

arcade_physics_manager.next_extra_balls = active_balls

Definition at line 130 of file arcade_physics_manager.gd.

◆ next_primary

arcade_physics_manager.next_primary = step_ball(primary_ball, delta, playfield)

Definition at line 82 of file arcade_physics_manager.gd.

◆ offset

arcade_physics_manager.offset

Definition at line 292 of file arcade_physics_manager.gd.

◆ owner_filters

arcade_physics_manager.owner_filters

Definition at line 340 of file arcade_physics_manager.gd.

◆ paddle

arcade_physics_manager.paddle

Definition at line 35 of file arcade_physics_manager.gd.

◆ paddle_position

arcade_physics_manager.paddle_position

Definition at line 260 of file arcade_physics_manager.gd.

◆ paddle_size

arcade_physics_manager.paddle_size

Definition at line 290 of file arcade_physics_manager.gd.

◆ position

arcade_physics_manager.position

Return left, right, or empty string when no side has scored.

Definition at line 47 of file arcade_physics_manager.gd.

◆ primary_scoring_side

arcade_physics_manager.primary_scoring_side = get_score_side(primary_ball, playfield)

Definition at line 119 of file arcade_physics_manager.gd.

◆ radius

arcade_physics_manager.radius

Definition at line 45 of file arcade_physics_manager.gd.

◆ rect

arcade_physics_manager.rect

Definition at line 261 of file arcade_physics_manager.gd.

◆ Rect2

arcade_physics_manager.Rect2

Definition at line 230 of file arcade_physics_manager.gd.

◆ size

arcade_physics_manager.size

Definition at line 259 of file arcade_physics_manager.gd.

◆ speed

arcade_physics_manager.speed

Definition at line 293 of file arcade_physics_manager.gd.

◆ split_velocity

arcade_physics_manager.split_velocity = split_velocity.normalized() * split_speed

Definition at line 247 of file arcade_physics_manager.gd.

◆ String

arcade_physics_manager.String

Collect scoring for a primary ball plus extras.

If the primary scored while extra balls remain, the first active extra is promoted to next_ball so multiball rounds continue without a reset.

Definition at line 102 of file arcade_physics_manager.gd.

◆ t_max

arcade_physics_manager.t_max = minf(t_max, tx2)

Definition at line 377 of file arcade_physics_manager.gd.

◆ t_min

arcade_physics_manager.t_min = maxf(t_min, tx1)

Definition at line 376 of file arcade_physics_manager.gd.

◆ tx1

arcade_physics_manager.tx1 = tx2

Definition at line 374 of file arcade_physics_manager.gd.

◆ tx2

arcade_physics_manager.tx2 = temp_x

Definition at line 375 of file arcade_physics_manager.gd.

◆ ty1

arcade_physics_manager.ty1 = ty2

Definition at line 387 of file arcade_physics_manager.gd.

◆ ty2

arcade_physics_manager.ty2 = temp_y

Definition at line 388 of file arcade_physics_manager.gd.

◆ Vector2

arcade_physics_manager.Vector2

Create a reusable ball state dictionary.

Return true when a fast ball swept across a paddle between frames.

Return true when a circular ball overlaps a paddle rectangle.

Return true when a projectile overlaps a paddle rectangle.

Create a reusable paddle state dictionary.

inset shrinks the collision rectangle for sprites with transparent padding.

This prevents tunneling when browser frame time spikes or ball speed gets high.

Definition at line 25 of file arcade_physics_manager.gd.

◆ velocity

arcade_physics_manager.velocity

Definition at line 48 of file arcade_physics_manager.gd.

◆ x

arcade_physics_manager.x

Definition at line 295 of file arcade_physics_manager.gd.

◆ y

arcade_physics_manager.y

Definition at line 50 of file arcade_physics_manager.gd.