Giter VIP home page Giter VIP logo

zumablitzremake's People

Contributors

bchantech avatar catwarriorofficial avatar flashmaster237 avatar jakubg1 avatar makowo avatar nxgi avatar owlscantread avatar shamblessm avatar

Watchers

 avatar  avatar

zumablitzremake's Issues

Fix crash with gap shots with >5 gaps

If the number of gaps exceeds the number of strings in scoreGapTexts the game crashes. There should be a fallback string or default to the last string if the number of gaps exceeds that.

local scoreGapTexts = {"GAP SHOT", "DOUBLE GAP", "TRIPLE GAP", "QUADRUPLE GAP", "QUINTUPLE GAP"}
if #gaps > 0 then
scoreText = scoreText .. "\n" .. scoreGapTexts[#gaps]

Fix ball offsets with spriteAnchor

When the shooter has spriteAnchor defined, the ball sprites no longer align if that value changes. The expectation is that when spriteAnchor changes, the next ball and ball firing position should adjust accordingly.

spriteAnchor = (0.5,0.5)

2024-06-01 17_42_00-Zuma Blitz Remake (alpha v0 1 8)

spriteAnchor = (0.5,0)

2024-06-01 17_42_24-Zuma Blitz Remake (alpha v0 1 8)

Error handling for invalid sphere colors in a level

The game does not check if the colors in a level are valid colors in the game, so the game will crash when it attempts to draw a color that does not exist.

The game should do the following:

  • Discard invalid sphere colors in the level and write a warning in the log
  • Do not load the map and return an error if pathsBehavior.colors is an empty array or does not exist

Add support for emitter paths

Particle emitters can accept a new parameter, path, which accepts either a string or a Path object.

If path is defined, then the emitter will travel on the path and only the x value of pos, speed, and acceleration will be used.

Add UI layer sorting

UI1 does not have a specific order for drawing UI elements on the same layer, so a different layer needs to specified for each object to control drawing order.

Currently, hud_layer_order.json contains an array of strings that specify the order which layers are drawn, but this needs to be updated every time a new layer is specified that is not on the list.

A solution would be to grab all layer names in all UI elements and sort alphabetically to determine draw order, so elements in layer A would be drawn before B, B before C, and so on.

Remove ShooterMovement prototype

The level must explicitly define the shooter position and type, not the shooter. If shooter is not present in the level, then the level won't have one and the player cannot fire any balls (they still can interact with other elements in the level).

Fix shooter mechanics when Level gameSpeed = 0

When gameSpeed is set to zero, time should appear to be frozen for everything. The shot sphere should not move as soon as it is fired, and the shooter should not be knocked back.

zerospeed.mp4

Move nextBallSprite from Shooter -> Sphere

If a new sphere is added to the game and the map defines the new sphere, then the shooter won't automatically display the color of the sphere in the next ball sprite unless the sprite definition is added there. Most of the time a shooter won't need a custom next ball sprite so it should be moved to the Sphere definition.

Add support for loading resources based on raw data

Currently, the engine loads resources from .json files in the game directory, which is not sufficient when defining resources that are not known until runtime (such as being generated from script.lua or assets pulled from server).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.