sivertsenstian / boom Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
With key-items to unlock!
All animations are now removed when a new animation is triggered - this should only be true if it is a local animation (on the same object)
Bug: When alien animates, the weapon animation freezes
ammunition should regen when under a specfied limit.
Inventory should do the actual regen (or a component on the weapon that signals the inventory.. ?)
Show handle on hud
GridCollision should check entire bounding box for valid collision (now only if its rounded to the x,z location and within the y-bounding.
Should do this for all collision_components to make it more precise.
This could also be implemented for neighbourchecks to have a less constrained movement-space (e.g. instead of grid-size it checks for bounding-size and position in grid)
Should have current score for level
Eventually also high scores for this level etc.
Health-component should be part of most non-static entities that can be hit
Should have option to restart, or exit to title
Should be based on player-components and display current values of e.g. health, weapons and ammo.
Should be possible to override entity that a remove is performed on, in the same manner as an add
Should display score in hud, and assign ppines for killing enemies, picking ip items, and time from start to end
Create hit-component type and make the current hit-result between entities a bit more complex
Right now the input locks down when e.g. space and a movement key is pressed (only 1 is allowed to process).
This is not a problem for multiple movement-keys and/or mouse-clicks.
Right now howlerjs is playing the sound directly on canvas (?) - but I need it to be played at the actual 3d-location so it is reduced the further away the player is - to avoid flooding the player with all sounds on the map at once!
Three looks to have implemented a WebKitAudioAPI-wrapper so will try and replace howler with this..
Add features needed to make the player sprint.
Should be an action-component like jump
Might also be nice if picking up an existing weapon gave some benefit (more ammo ?)
An ai-entity should play its animation where it currently stands instead of the animation position being triggered from its original position
Make the precise collision factor height/y-value when determining a hit
Just like static tiles and textures are generated from the map, entities should be as well
Need to be able to generate different enemies/entities based on the information provided by the 'entities'-layer in the tiled-map.
First thought is to have a factory that receives a set of parameters from the world-builder from the layer
Right now there is a unique identifier for each entitiy, and a position is generated by the world-builder.
-> Use this ID to specify what type of entity to produce with the given parameters and call this from the world-loader
The Collision grid should have support for detecting collisions with non-static entities.
Right now it only registers static entities in the collisiongrid.
Should probably have an additionl grid-layout with non-static entities that are specified by entity-id to generate different results based on the entities colliding.
E.g. if a bullet collides with an enemy in the new grid - this should trigger a -health on the given entity and whatever follows from that (death, hurt etc..)
Should probably rename the current grid-array in collisiongrid to reflect this
Implement a basic light-type that can be added on the tile-layer.
Lights are loaded in the same manner as other static entities (walls, floor etc.) in world.load()
Start with a basic light to PoC and make sure it works, make it easy to implement different lights (either a configurable entity - or several entities (one per light-type)
Should be persistent on a server, first just save it as a json file?
The weapon disappears, and does not (always) come back when ammo is picked up - stopping it from firing but reducing ammo... wat
Should be possible to go beyond health-limit but it should decay fast to the limit
Add basic power-upps
Implemnt simple health-pack as PoC/Test
Open / close with sound an animation
A death action-component should be triggered when health is 0 or entity is destroyed.
This should trigger a sound, animation(later?) and disposing the entity.
Should have title/splash and 'start game'
Perhaps an option to select level ?
Skybox should be improved and moved to its own entity.
Skybox-information should be defined on the tiled-map, and loaded when other entities from map are loaded (world.load)
Should be direct property on map
Implement a new input-component to be used with AI.
Should have an AI-script that performs all 'user-input' instead of mouse/keyboard (current).
Combining this with the current basic movement component should be enough to have movable enemies. Will start very simple - with random movement / attacks to test the concept.
Jump action needs to be reimplemented. Was last fixed to work with new design after physijs was removed from the solution.
Need to make it 'smoother' and more controllable
The specific collision component should only collide when the position of the entity its part of is directly on top of another entity.
Useful for e.g. bullet/projectile hits.
Implement a musical track to be played specified by the map selected.
First iteration:
One track to be played on map load
A weapon should have ammo, ammo-max and clip-size for firing e.g. bullets!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.