svenev / orangebugreloaded Goto Github PK
View Code? Open in Web Editor NEWA game about pushing around things and solving puzzles.
A game about pushing around things and solving puzzles.
e.g. Player moves over a teleporter (follow-up is scheduled for +1s) and pushes a box onto the teleporter half a second later. 2 options here:
We will need some locking mechanisms to ensure concurrent transactions are executed correctly.
Make it immutable.
Check if size values and corresponding bounds make sense.
We need to store metadata for tiles, e.g. the designed tile (tile "template"), region ID, date/time of last modification, ...
Due to immutability it would be unnatural for equal tiles/entities to return false if compared with ==.
The GameClient's PlayerPosition is only updated if the client moves the player.
If is not updated if the player is moved by another player or entity (e.g. PistonTile).
Currently every entity is pushable around a CornerTile because it just uses MoveAsync instead of DetachAsync. Some entities however, such as CoinEntity, are not pushable and should be collected instead.
Things that came to my mind (in no reasonable order):
...and find a way to also emit them on the appropiate clients.
When a chunk is loaded, we should allow every tile to update themselves by calling OnEntityMoveTransactionCompletedAsync and OnFollowUpTransactionAsync. And those methods should probably be renamed then.
Think of the following chunk scenarios and what should happen when the chunk is loaded:
Tiles and tile metadata are versioned with integers. Overflow of these numbers is currently not handled.
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.