summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBardur Arantsson <bardur@scientician.net>2012-05-29 05:11:28 +0200
committerBardur Arantsson <bardur@scientician.net>2012-05-29 05:38:19 +0200
commit127f4d6985d998c65d958907758e474edb29ceec (patch)
tree613b6cc20b517f25a6f6d96ae84a6b572cd77d0b
parente272282c1451329d16fd16efbfccc234395cba6e (diff)
Lua: Use get_level_s to avoid C->Lua->C loop
-rw-r--r--src/cmd1.c2
-rw-r--r--src/externs.h2
-rw-r--r--src/spells3.c2
3 files changed, 4 insertions, 2 deletions
diff --git a/src/cmd1.c b/src/cmd1.c
index ffeb6d2e..37e12f61 100644
--- a/src/cmd1.c
+++ b/src/cmd1.c
@@ -2466,7 +2466,7 @@ void py_attack(int y, int x, int max_blow)
/* Melkor can cast curse for you*/
PRAY_GOD(GOD_MELKOR)
{
- int lv = exec_lua("return get_level(MELKOR_CURSE, 100)");
+ int lv = get_level_s(MELKOR_CURSE, 100);
if (lv >= 10)
{
diff --git a/src/externs.h b/src/externs.h
index d2805f0c..0ebe0f04 100644
--- a/src/externs.h
+++ b/src/externs.h
@@ -1402,6 +1402,8 @@ extern void geomancy_dig(int oy, int ox, int dir, int length);
extern void channel_the_elements(int y, int x, int level);
/* spells3.c */
+s32b get_level_s(int sp, int max);
+
extern s32b NOXIOUSCLOUD;
extern s32b AIRWINGS;
extern s32b INVISIBILITY;
diff --git a/src/spells3.c b/src/spells3.c
index e7dabb83..b8632bf9 100644
--- a/src/spells3.c
+++ b/src/spells3.c
@@ -174,7 +174,7 @@ bool_ *NO_CAST = NULL;
bool_ CAST_VAL = 0xca; /* Any value will do */
bool_ *CAST = &CAST_VAL;
-static s32b get_level_s(int sp, int max)
+s32b get_level_s(int sp, int max)
{
return get_level(sp, max, 1);
}