spell book container to store scrolls

Talk about creating Grimrock 1 levels and mods here. Warning: forum contains spoilers!
Post Reply
bongobeat
Posts: 1076
Joined: Thu May 16, 2013 5:58 pm
Location: France

spell book container to store scrolls

Post by bongobeat »

Hello,

someone can help me for a script please?

I am thinking of a spellbook (like the tome of wisdom), that the player can use to store the scrolls in, like a container (chest)

the difficult part is, that the tome can only store scrolls, nothing else. This has to be done by scripting, if it is possible.
My asset pack: viewtopic.php?f=22&t=9320

Log1 mod : Toorum Manor: viewtopic.php?f=14&t=5505
User avatar
maneus
Posts: 246
Joined: Mon Jun 17, 2013 10:42 pm
Location: Switzerland

Re: spell book container to store scrolls

Post by maneus »

You can find such a nice item made by John Wordsworth here: viewtopic.php?f=14&t=6230&hilit=notebook#p65614

Or directly on nexus: http://www.nexusmods.com/grimrock/mods/355/?
bongobeat
Posts: 1076
Joined: Thu May 16, 2013 5:58 pm
Location: France

Re: spell book container to store scrolls

Post by bongobeat »

well I know the notebook by JW, but I have difficult to add it with the hooks, as I'm already using some other script like: quick action bar, log journal, and a spellbook script, picked I don't remember where, that the spells must be learned before used, another hook used for a boulder projectile, and a hook with an item that allow the champion a resistance against physical damage.
This start to be a total mess :?

That's why I wanted something more easy to implement like a "simple" item.

I ve already tried the notebook but I can't turn or moves when it is opened, there is something wrong with the onMove and onTurn hooks. Then I'm not really sure of what I'm doing when adding it, seems that quick bar, the spell book and the journal works. By the way Ihave spawn 2 large notebooks, one to store the notes, the other to store the scrolls, works great, but I always can't move or turn.

maybe can you help or someone else?

here is my init.lua
SpoilerShow
-- This file has been generated by Dungeon Editor 1.3.7

-- import standard assets
import "assets/scripts/standard_assets.lua"

-- import custom assets
--import "mod_assets/framework/framework.lua"
-- load desired framework modules
--fw_loadModule('timers')
--fw_loadModule('grimq')
--fw_loadModule('data')
--fw_loadModule('help')
--fw_loadModule('fw')
--fw_loadModule('fw_default_hooks')

-- import custom assets
import "mod_assets/scripts/items.lua"
import "mod_assets/scripts/monsters.lua"
import "mod_assets/scripts/objects.lua"
import "mod_assets/scripts/wall_sets.lua"
import "mod_assets/scripts/recipes.lua"
import "mod_assets/scripts/spells.lua"
import "mod_assets/scripts/materials.lua"
import "mod_assets/scripts/sounds.lua"
--
--wallsets
import "mod_assets/scripts/mine/mine_objects.lua"
import "mod_assets/scripts/mine/mine_wall_sets.lua"
import "mod_assets/scripts/mine/mine_materials.lua"
import "mod_assets/scripts/mine/mine_sounds.lua"
import "mod_assets/scripts/sx_yuleland.lua"
import "mod_assets/scripts/northern_dungeon_materials.lua"
import "mod_assets/scripts/northern_dungeon_objects.lua"
import "mod_assets/scripts/northern_dungeon_wall_set.lua"
import "mod_assets/scripts/outdoor.lua"
import "mod_assets/southern_temple/scripts/wall_sets.lua"
-- dm pack
import "mod_assets/dmcsb_pack/scripts/dmcsb_pack_init.lua"
--
-- items
import "mod_assets/grim_vsword/grim_fbox.lua"
import "mod_assets/grim_vsword/gor_coin.lua"
import "mod_assets/grim_vsword/grim_coinslot.lua"
import "mod_assets/grim_vsword/grim_firestaff.lua"
import "mod_assets/grim_vsword/dm_food.lua"
import "mod_assets/grim_vsword/dm_keys.lua"
import "mod_assets/grim_vsword/dm_gems.lua"
import "mod_assets/oliveitem/oliveitems.lua"
import "mod_assets/oliveitem/tech_box/tech_box.lua"
import "mod_assets/oliveitem/anvil.lua"
import "mod_assets/pandafox_assets/black_armor/black_armor.lua"
import "mod_assets/throwing_hammer/scripts/items.lua"
import "mod_assets/throwing_hammer/scripts/materials.lua"
import "mod_assets/books/tome.lua"
import "mod_assets/rocketlauncher/rocketlauncher.lua"
-- Import Oriental Weapons
import "mod_assets/oriental_weapons/oriental_weapons.lua"
--
-- objects
import "mod_assets/lol_gobelins/scripts/objects.lua"
import "mod_assets/lol_gobelins/scripts/materials.lua"
import "mod_assets/grim_bed/grim_bed.lua"
import "mod_assets/scripts/statuemove.lua"
import "mod_assets/scripts/glass_walls_and_secret_doors.lua"
import "mod_assets/scripts/flooded_dungeon.lua"
import "mod_assets/scripts/customalcoves.lua"
import "mod_assets/log_desk/log_desk.lua"
import "mod_assets/glasswall/glasswall.lua"
import "mod_assets/scripts/fusion_reactor.lua"
import "mod_assets/oliveitem/particle/sphere_particles.lua"
--wall plaques
import "mod_assets/wall_plaques/scripts/wall_plaques.lua"
-- odinsball industrial machine object
import "mod_assets/plugins/sh_ob_wallset/sh_ob_scripts/sh_ob_wallset_materials.lua"
import "mod_assets/plugins/sh_ob_wallset/sh_ob_scripts/sh_ob_wallset_objects.lua"
--
-- boulder with party hook
import "mod_assets/boulder/scripts/boulder_party.lua"
--
-- monsters
import "mod_assets/plugins/beholder/beholder.lua"
import "mod_assets/dragon/dragon.lua"
import "mod_assets/plugins/cultist/scripts/monsters.lua"
import "mod_assets/plugins/cultist/scripts/materials.lua"
import "mod_assets/plugins/skeleton_warrior_sword/skeleton_warrior_sword.lua"
import "mod_assets/plugins/human_bowman/human_bowman.lua"
import "mod_assets/swarm/scripts/init.lua"
--
-- special script
import "mod_assets/dx_sky_system/dx_sky_system.lua"
-- stone skin bracelet
defineObject{
name = "party",
class = "Party",
editorIcon = 32,
onDamage = function(champion,dmg,type)
if recursing then recursing = false return true end
if champion:getItem(10) and champion:getItem(10).name == "primal_bracelet" then
if type == "physical" then
recursing = true
champion:damage(math.ceil(dmg*.85),type)
return false
end
end
return true
end
}
-- spellbook
cloneObject{
name = "party",
baseObject = "party",
onCastSpell = function(caster,spell)
return spellbook_script.checkSpellbook(caster,spell)
end,
}
--
import "mod_assets/plugins/locks/keys_and_locks_collection.lua"
-- notebook JW
import "mod_assets/notebook/init_framework.lua";
--quickbar et journal book JW
cloneObject{
name = "party",
baseObject = "party",
onDrawGui = function(g)
-- Start NoteBook Mod Hook
if ( nb_main_script ~= nil and nb_main_script.onDrawGui ~= nil ) then
nb_main_script:onDrawGui(g);
end
-- End NoteBook Mod Hook
mdConversationList.onDraw(g);
qb_script.onDrawGui(g);
-- end
--}
end,
onMove = function(party, direction)
-- Start NoteBook Mod Hook
if ( nb_main_script ~= nil and nb_main_script.isNoteBookShowing() ) then
return false;
end
-- End NoteBook Mod Hook
end,
onTurn = function(party, direction)
-- Start NoteBook Mod Hook
if ( nb_main_script ~= nil and nb_main_script.isNoteBookShowing() ) then
return false;
end
-- End NoteBook Mod Hook
end,
onRest = function(party)
-- Start NoteBook Mod Hook
if ( nb_main_script ~= nil and nb_main_script.isNoteBookShowing() ) then
return false;
end
-- End NoteBook Mod Hook
end,
}
--

and there is this script for a boulder
SpoilerShow
cloneObject{
name = "party",
baseObject = "party",
onProjectileHit = function(champion, projectile, amount)
if projectile.name == "boulder" then
party:playScreenEffect("damage_screen")
shootProjectile("boulder",party.level,party.x,party.y,party.facing, 3,0,0,0,10,0,1000,party,false)
damageTile(party.level, party.x, party.y, projectile.facing, 6, "physical", 9999)
end
return true
end,

}
My asset pack: viewtopic.php?f=22&t=9320

Log1 mod : Toorum Manor: viewtopic.php?f=14&t=5505
User avatar
maneus
Posts: 246
Joined: Mon Jun 17, 2013 10:42 pm
Location: Switzerland

Re: spell book container to store scrolls

Post by maneus »

That you can´t move or turn when you've opened the notebook is normal.
The entry for it should be stay in the notebook.script in your dungeon.
I think if you would change the lines in the script for what you will, it should be possible then to move or turn when you´ve open the notebook.
But for this I would maybe ask JohnWordsworth.
bongobeat
Posts: 1076
Joined: Thu May 16, 2013 5:58 pm
Location: France

Re: spell book container to store scrolls

Post by bongobeat »

ok I will see that when I have time. Thanks for your help :)
My asset pack: viewtopic.php?f=22&t=9320

Log1 mod : Toorum Manor: viewtopic.php?f=14&t=5505
User avatar
maneus
Posts: 246
Joined: Mon Jun 17, 2013 10:42 pm
Location: Switzerland

Re: spell book container to store scrolls

Post by maneus »

@bongobeat: What I´ve told you was total bullshit. Sorry. :D

In your init.lua you must only deactivate the following entries:

In your onMove hook:

Code: Select all

if ( nb_main_script ~= nil and nb_main_script.isNoteBookShowing() ) then return false end
	if scriptHook.onMove() == false then return true end
In your onTurn hook:

Code: Select all

if ( nb_main_script ~= nil and nb_main_script.isNoteBookShowing() ) then return false end

     return scriptHook.onTurn()
   end,
I did this with two strokes in front of each line and it works well. I can walk, turn and put scrolls and notes at the same time into the book now.
bongobeat
Posts: 1076
Joined: Thu May 16, 2013 5:58 pm
Location: France

Re: spell book container to store scrolls

Post by bongobeat »

no problem :D
it works, thanks anyway!
My asset pack: viewtopic.php?f=22&t=9320

Log1 mod : Toorum Manor: viewtopic.php?f=14&t=5505
Post Reply