Update README
This commit is contained in:
parent
7c370a9e4b
commit
762d9aa732
@ -1,4 +1,4 @@
|
||||
# Moonfall #
|
||||
# Moonfall
|
||||
|
||||
Moonfall is the name of a game engine that I spent several months developing back in 2008. It leveraged SDL for
|
||||
graphics, Lua for in-game scripting, and wxWidgets for the built-in developer tools. The cross-platform engine was
|
||||
@ -18,14 +18,13 @@ with Murder."
|
||||
[![Asset editor](https://foosoft.net/projects/moonfall/img/asset-editor-thumb.png)](https://foosoft.net/projects/moonfall/img/asset-editor.png)
|
||||
[![Map editor](https://foosoft.net/projects/moonfall/img/map-editor-thumb.png)](https://foosoft.net/projects/moonfall/img/map-editor.png)
|
||||
|
||||
## Technology ##
|
||||
## Technology
|
||||
|
||||
From a technical point of view, the game engine was an exercise in creating a completely data driven game. In
|
||||
retrospect, it was probably over-engineered, but in general it was flexible and I liked what I could do with it. At the
|
||||
core of the engine was the `Actor` class, the functionality of which could be expanded through add-on properties. The
|
||||
property definitions were specified in XML; for example, below is the definition for the playable character:
|
||||
|
||||
|
||||
```xml
|
||||
<Actor alias = "Player.01" dynamic = "1" layer = "4" thumbnail = "Player.01.Idle.S.01">
|
||||
<Properties>
|
||||
@ -40,7 +39,6 @@ In addition to the self-explainable `Animation` and `Physics` properties, you ca
|
||||
Lua script with the actor. Scripts would get notifications about events such as `OnActorUpdate`, during which custom
|
||||
processing could take place:
|
||||
|
||||
|
||||
```lua
|
||||
function OnActorUpdate(elapsed)
|
||||
if InputIsKeyTriggered(META_KEY_USE) then
|
||||
@ -68,7 +66,6 @@ Scripts can directly interact with properties on the parent `Actor` and can comm
|
||||
messaging system. This made it possible to build any game object imaginable by editing a couple of XML files and some
|
||||
simple scripting.
|
||||
|
||||
|
||||
```lua
|
||||
function DoActorWalk(direction)
|
||||
if playerAction == ACTION_WALK and playerDirection == direction then
|
||||
|
Loading…
Reference in New Issue
Block a user