enigma-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Enigma-devel] Enigma Extensions


From: Dietmar
Subject: [Enigma-devel] Enigma Extensions
Date: Sun, 22 Jul 2007 23:15:55 +0200
User-agent: KMail/1.9.6

Hello everyone !

First of all I want to thank you for such a great game - I fell in love with 
it in less than 2 days !! Keep on the good work !
As I like the game that much, after a week I wanted to try to create some 
levels of my own, got in touch with the lua-Scripting-Level-Interface and 
started off. 

While I was playing around with some level-designes I thought of some items I 
was missing - first of all a Dynamit-Stone - like the blackbomb stone.
I also thought of other item-suplliers and so grabbed the code and read 
through it - to my surprise I found the dynamite- (and a white-bomb-)stone in 
the sources completely ready, but commented out - why this ?

I looked through the code further and found everything implemented for them 
including the graphics - so I enabled them in source and they worked fine.
As previously said, you have really done a VERY GOOD job, designing the game 
(especially the code itsself) and so I tried to add some more "Bombstones" as 
item-suppliers.  (I like the idea that you can have as many items from some 
kinds as you like, but you have to manage the right counts to solve the 
puzzles that await you at the next screen.) 

I created the following bomb-stones (including Artworkt for them) :

"bombstone"             "provided item"
st-extralife                    it-extralife
st-pencil                       it-pencil
st-pin                          it-pin
st-volcanoseed                  it-seed_volcano
st-woodseed                     it-seed
st-greenbrownseed               it-seed_nowood
st-keys                         it-key
st-brushes                      it-brush
st-bags                         it-bag
st-umbrella                     it-umbrella
st-extinguishers                it-extinguisher
st-coins1                       it-coin1
st-coins2                       it-coin2
st-coins4                       it-coin4

After this and some playing around with the items I also thought of a way to 
add/remove items directly from the player's inventory - and it would also be 
nice to be able to check if the inventory is empty. (Found also a level where 
the autor wrote in the comment that he wantet this to be checked and didn't 
know how).
So I read through the lua-bindings of enigma and implemented (til now) 3 new 
Functions for the lua-level-interface:

Add_Inventory("item");
Inv_IsEmpty();
Inv_IsFull();

I haven't implemented the remove-function yet, but are planning to do so soon.

I've done the changes against Version 1.00 and took a fast overlook of 1.01 
from svn before I wrote this mail and did not find any changes so far at the 
points where I changed the code.

So I can provide you with the code(-changes) and the artwork if you want, the 
artwork would be free to use. So please let me know if you are interested in 
the files.

A couple of weeks ago I had an idea of a new item again. - An "Air-Fan". (This 
item - or stone would add constant velocity to the floor-tiles in a row in 
it's pointing direction, until the "air-stream" ist blocked by a stone or 
item in its way. The velocity would decrease with the distance to the fan.)
I thought of implementing it as a second "Laser-beam" class since it has to 
check everytime a stone is moved if it's air-flow is blocked now or got 
freed. I haven't done any work in this direction - I wanted to ask you for 
advice before I start - so what do you thing about it ?

Phew - ok I'm sorry for writing such a long mail to the list, but I wanted to 
detail how I came to all this and didn't want to sound arogant about my work. 
(What is much more likely that would have happened when I just had offered my 
changes)

You have really written a great game and it's as much pleasure for me to play 
it as to write code for it ! So, keep up the good work !

Best regards,
Dietmar




reply via email to

[Prev in Thread] Current Thread [Next in Thread]