summaryrefslogtreecommitdiff
path: root/example
diff options
context:
space:
mode:
Diffstat (limited to 'example')
-rw-r--r--example/items.xml2
-rw-r--r--example/monsters.xml2
-rw-r--r--example/scripts/items/candy.lua8
-rw-r--r--example/scripts/main.lua3
-rw-r--r--example/scripts/monster/testmonster.lua8
-rw-r--r--example/scripts/status/jump.lua4
-rw-r--r--example/scripts/status/plague.lua4
7 files changed, 22 insertions, 9 deletions
diff --git a/example/items.xml b/example/items.xml
index 730e5729..cdbc3e44 100644
--- a/example/items.xml
+++ b/example/items.xml
@@ -68,7 +68,7 @@
max-per-slot="30"
value="15">
<effect trigger="activation">
- <script src="candy.lua" function="use_candy" />
+ <scriptevent activate="use" />
<consumes />
</effect>
</item>
diff --git a/example/monsters.xml b/example/monsters.xml
index f0361915..962b137e 100644
--- a/example/monsters.xml
+++ b/example/monsters.xml
@@ -78,7 +78,7 @@ exp<TAG>: Tells how much experience point a monster is giving up
damage-factor="1"
range="32"
animation="attack"
- script-function="on_maggot_strike"
+ script-event="strike"
/>
<script>testmonster.lua</script> <!-- only Proof of Concept-->
</monster>
diff --git a/example/scripts/items/candy.lua b/example/scripts/items/candy.lua
index a9c59fe4..f60e687d 100644
--- a/example/scripts/items/candy.lua
+++ b/example/scripts/items/candy.lua
@@ -2,12 +2,14 @@
Example item script.
- Makes the player character say "*munch*munch*munch*" when using this item.
+ Makes the player character say "*munch*munch*munch*" when using a candy.
The HP regeneration effect is handled separately based on the heal value in
items.xml.
--]]
-function use_candy(user)
+local candy = mana.get_item_class("candy")
+
+candy:on("use", function(user)
mana.being_say(user, "*munch*munch*munch*")
-end
+end)
diff --git a/example/scripts/main.lua b/example/scripts/main.lua
index aeaca63b..6d8207e7 100644
--- a/example/scripts/main.lua
+++ b/example/scripts/main.lua
@@ -9,3 +9,6 @@
require "scripts/global_events"
require "scripts/special_actions"
require "scripts/crafting"
+
+require "scripts/items/candy"
+require "scripts/monster/testmonster"
diff --git a/example/scripts/monster/testmonster.lua b/example/scripts/monster/testmonster.lua
index 2701d24e..63b29179 100644
--- a/example/scripts/monster/testmonster.lua
+++ b/example/scripts/monster/testmonster.lua
@@ -7,14 +7,14 @@
--]]
-function update_monster(mob)
+local function update(mob)
local r = math.random(0, 200);
if r == 0 then
mana.being_say(mob, "Roar! I am a boss")
end
end
-function on_maggot_strike(mob, victim, hit)
+local function strike(mob, victim, hit)
if hit > 0 then
mana.being_say(mob, "Take this! "..hit.." damage!")
mana.being_say(victim, "Oh Noez!")
@@ -23,3 +23,7 @@ function on_maggot_strike(mob, victim, hit)
mana.being_say(victim, "Whew...")
end
end
+
+local maggot = mana.get_monster_class("maggot")
+maggot:on_update(update)
+maggot:on("strike", strike)
diff --git a/example/scripts/status/jump.lua b/example/scripts/status/jump.lua
index 10ad9288..166c90d1 100644
--- a/example/scripts/status/jump.lua
+++ b/example/scripts/status/jump.lua
@@ -12,7 +12,7 @@
----------------------------------------------------------------------------------
-function tick_jump(target, ticknumber)
+local function tick(target, ticknumber)
if (ticknumber % 10 == 0) then
mana.being_say(target, "I have the jumping bug!")
end
@@ -51,3 +51,5 @@ function tick_jump(target, ticknumber)
mana.being_apply_status(victim, 2, 6000)
mana.being_say(victim, "Now I have the jumping bug")
end
+
+mana.get_status_effect("jumping status"):on_tick(tick)
diff --git a/example/scripts/status/plague.lua b/example/scripts/status/plague.lua
index 5f33eb87..a43b9d40 100644
--- a/example/scripts/status/plague.lua
+++ b/example/scripts/status/plague.lua
@@ -12,7 +12,7 @@
-- Software Foundation; either version 2 of the License, or any later version. --
----------------------------------------------------------------------------------
-function tick_plague(target, ticknumber)
+local function tick(target, ticknumber)
if (ticknumber % 10 == 0) then
mana.being_say(target, "I have the plague! :( = " .. ticknumber)
end
@@ -26,3 +26,5 @@ function tick_plague(target, ticknumber)
i = i + 1
end
end
+
+mana.get_status_effect("plague"):on_tick(tick)