From cf18ce071c79ae37e14ea38943e0b1d88da70a7b Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Fri, 9 Apr 2021 13:33:57 -0300 Subject: Override --- npc/013-1/sagatha.txt | 438 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 438 insertions(+) create mode 100755 npc/013-1/sagatha.txt (limited to 'npc/013-1/sagatha.txt') diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt new file mode 100755 index 00000000..909c95b7 --- /dev/null +++ b/npc/013-1/sagatha.txt @@ -0,0 +1,438 @@ + +function script QuestSagathaHappy { + @unhappiness = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; + if (@unhappiness < @value) + goto L_zero; + + @unhappiness = @unhappiness - @value; + goto L_write; + +L_zero: + @unhappiness = 0; + goto L_write; + +L_write: + QUEST_MAGIC = (QUEST_MAGIC & ~NIBBLE_3_MASK) | (@unhappiness << NIBBLE_3_SHIFT); + return; +} + +function script QuestSagathaAnnoy { + @unhappiness = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; + if ((@unhappiness + @value) > 15) + goto L_max; + + @unhappiness = @unhappiness + @value; + goto L_write; + +L_max: + @unhappiness = 15; + goto L_write; + +L_write: + QUEST_MAGIC = (QUEST_MAGIC & ~NIBBLE_3_MASK) | (@unhappiness << NIBBLE_3_SHIFT); + return; +} + +function script SagathaStatus { + if (getequipid(equip_head) != 1216 && getequipid(equip_head) != 752) + goto L_Next; + @value = 15; + callfunc "QuestSagathaAnnoy"; + goto L_Next; + +L_Next: + @mexp = MAGIC_EXPERIENCE & 65535; + @has_magic = getskilllv(SKILL_MAGIC); + @evil = 0; + @good = 0; + @unhappy = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; + @mouboo = ((QUEST_MAGIC & NIBBLE_2_MASK) >> NIBBLE_2_SHIFT) & 3; + + if (@mouboo == 3) + @good = @good + 1; + if (@mouboo == 2) + @evil = 1; + if (@mouboo == 1) + @evil = 1; + + if (MAGIC_FLAGS & MFLAG_DID_CUTTREE) + @evil = 1; + + @druid = (((QUEST_MAGIC & NIBBLE_2_MASK) >> NIBBLE_2_SHIFT) & 12) >> 2; + if (@druid == 3) + @good = @good + 1; + return; +} + +013-1,131,24,0 script Sagatha#_M NPC167,{ + callfunc "SagathaStatus"; + + @Q_MASK = NIBBLE_4_MASK | NIBBLE_5_MASK; + @Q_SHIFT = NIBBLE_4_SHIFT; + + @STATUS_INITIAL = 0; + set @STATUS_STUDENT, 1; // N14 + @STATUS_STUDENT_N10 = 2; + @STATUS_STUDENT_A10 = 3; + @STATUS_STUDENT_A11 = 4; + @STATUS_STUDENT_A12 = 5; + @STATUS_STUDENT_N11 = 6; + @STATUS_STUDENT_LEVEL_3 = 7; + + @Q_status = (QUEST_MAGIC & @Q_MASK) >> @Q_SHIFT; + + if (MAGIC_FLAGS & MFLAG_KNOWS_SAGATHA) + mes "[Sagatha the Witch]"; + if (!(MAGIC_FLAGS & MFLAG_KNOWS_SAGATHA)) + mes "[Witch]"; + // if fluffyhat + if (getequipid(equip_head) == 752) + goto L_hat_attack; + if (@evil) + goto L_evil; + if (@unhappy > 10) + goto L_unhappy; + if (MAGIC_FLAGS & MFLAG_KNOWS_SAGATHA) + goto L_wb; + + mes "Before you stands a beautiful woman, dressed in dark purple robes and wearing a witch's hat."; + + mes "She looks at you suspiciously."; + next; + menu + "Who are you?", L_Next, + "What's your name?", L_Intro_name, + "Hello! My name is " + strcharinfo(0) + ".", L_Intro_givename, + "Goodbye.", L_close; + +L_Next: + mes "[Witch]"; + mes "\"I am what you humans call a witch. I am a human who has chosen all living creatures as what you call family.\""; + next; + menu + "No, I mean... what's your name?", L_Intro_name, + "Hello! My name is " + strcharinfo(0) + ".", L_Intro_givename, + "Uh.... goodbye.", L_close; + +L_hat_attack: + mes "The witch seems to be trembling with disgust as she stares at your headgear."; + mes "\"Do you think that is funny?\" she snarls."; + next; + if (MAGIC_FLAGS & MFLAG_KNOWS_SAGATHA) + mes "[Sagatha the Witch]"; + if (!(MAGIC_FLAGS & MFLAG_KNOWS_SAGATHA)) + mes "[Witch]"; + mes "\"You have no idea what that poor creature felt!\""; + mes "She snaps her fingers."; + mes "\"Let me show you...\""; + misceffect sfx_magic_war, strcharinfo(0); + misceffect sfx_magic_war; + heal -300, 0; + close; + +L_Intro_name: + mes "[Sagatha the Witch]"; + mes "\"They call me Sagatha.\""; + MAGIC_FLAGS = MAGIC_FLAGS | MFLAG_KNOWS_SAGATHA; + next; + goto L_Main; + +L_Intro_givename: + mes "[Witch]"; + mes "\"Ah.\""; + next; + menu + "What's yours?", L_Intro_name, + "Uhm... bye.", L_close; + +L_evil: + mes "The witch's eyes flare up in anger as she notices you, and she turns away from you."; + mes "Whatever the reason, she doesn't seem to like you."; + close; + +L_unhappy: + mes "The witch glares at you in anger."; + mes "\"I wonder if you can still sleep after killing those innocent forest creatures!"; + mes "I am sure that they will come back to haunt you in your dreams!\""; + close; + +L_wb: + if (@good > 1) + mes "Sagatha nods as she notices you."; + if (@good == 1) + mes "Sagatha raises an eyebrow as you address her."; + if (@good == 0) + mes "Sagatha glances at you, suspicion evident in her eyes."; + next; + goto L_Main; + +L_Main: + if (@Q_status) + menu + "Can you explain magic to me?", L_explain_magic, + "Can you teach me more magic?", L_Teach, + "What do you know about...", L_Question, + "Goodbye.", L_close; + menu + "Can you explain magic to me?", L_explain_magic, + "Can you teach me magic?", L_Teach_Initial, + "What do you know about...", L_Question, + "Goodbye.", L_close; + +L_Teach_Initial: + if (@good < 2) + goto L_initial_nogood; + if (getskilllv(SKILL_MAGIC_NATURE) < 2) + goto L_initial_nonature; + mes "[Sagatha the Witch]"; + mes "She nods."; + mes "\"For now, yes. But you will have to prove that you really care about more than yourself.\""; + next; + mes "[Sagatha the Witch]"; + mes "She snaps her fingers, and without warning you begin to acutely sense the magical energies around you, for a brief instant!"; + @Q_status = @STATUS_STUDENT; + callsub S_Update_Var; + @SUP_xp = 5000; + @SUP_lvl = 2; + callsub S_up_astral; + next; + mes "[Sagatha the Witch]"; + mes "\"In the future, I will teach you nature and astral magic. For the other schools there are better teachers around.\""; + if (getskilllv(SKILL_MAGIC) < 2) + mes "\"Your skill in magic won't be great enough to use some of the spells yet, so keep practicing and visiting the mana seed until it is.\""; + next; + goto L_Main; + +L_initial_nogood: + mes "[Sagatha the Witch]"; + mes "\"I don't take strangers as students.\""; + next; + goto L_Main; + +L_initial_nonature: + mes "[Sagatha the Witch]"; + mes "\"I might, but you don't even understand the basics of nature magic.\""; + next; + goto L_Main; + +L_explain_magic: + mes "[Sagatha the Witch]"; + mes "\"No.\""; + next; + goto L_Main; + +L_Teach: + if (@Q_status == @STATUS_STUDENT) + goto L_Teach_N14; + if (@Q_status == @STATUS_STUDENT_N10) + goto L_Teach_N10; + if (@Q_status == @STATUS_STUDENT_A10) + goto L_Teach_A10; + if (@Q_status == @STATUS_STUDENT_A11) + goto L_Teach_A11; + if (@Q_status == @STATUS_STUDENT_A12) + goto L_Teach_A12; + if (@Q_status == @STATUS_STUDENT_N11) + goto L_Teach_N11; + + mes "[Sagatha the Witch]"; + mes "\"Not yet. You have to ask the mana seed to give you more power.\""; + next; + goto L_Main; + +L_practice: + mes "[1000 experience points]"; + @Q_status = @Q_status + 1; + callsub S_Update_Var; + getexp 1000,0; + next; + mes "[Sagatha the Witch]"; + mes "\"Now go and practice.\""; + next; + goto L_Main; + +L_Teach_N14: + if (@mexp < 125) + goto L_Teach_noexp; + mes "[Sagatha the Witch]"; + mes "\"Some forest creatures sometimes overgrow their fur or hide. That makes them uncomfortable.\""; + next; + mes "[Sagatha the Witch]"; + mes "\"You can help them with shearing magic. Press your hands together and say '" + get(.invocation$, "shear") + "'. Then touch them with your hands, and brush off any excess.\""; + next; + mes "[Sagatha the Witch]"; + mes "\"The spell is strong, so you only need to do this once. Be careful not to cut them. Some things they shed are useful. Often they will leave them to you as a thank-you.\""; + goto L_practice; + +L_Teach_N10: + if (@mexp < 150) + goto L_Teach_noexp; + mes "[Sagatha the Witch]"; + mes "\"Next, a nature spell. Take a cocoon shell. Hold it in your hand. Feel its lightness.\""; + next; + mes "[Sagatha the Witch]"; + mes "\"Now whisper '" + get(.invocation$, "flying-backpack") + "', and if your backpack was pressing on you you should no longer feel it now.\""; + goto L_practice; + +L_Teach_A10: + if (@mexp < 180) + goto L_Teach_noexp; + mes "[Sagatha the Witch]"; + mes "\"To protect against others' magic, take a small mushroom from a shady place. Mushrooms draw things out of the earth. Rub your mushroom into pieces between your hands.\""; + next; + mes "[Sagatha the Witch]"; + mes "\"Then say '" + get(.invocation$, "magic barrier") + "' and let the mushroom's power take over.\""; + goto L_practice; + +L_Teach_A11: + if (@mexp < 200) + goto L_Teach_noexp; + mes "[Sagatha the Witch]"; + mes "\"If you must fight, call allies. You can call spiky mushrooms out of the ground with a mushroom spike and a root. Hold up the spike and call out to them: '" + get(.invocation$, "smsmushrooms") + "'. Then press the root to the ground.\""; + next; + mes "[Sagatha the Witch]"; + mes "\"Spiky mushrooms often grow too many spikes, so you can shear the spikes off of some.\""; + next; + goto L_practice; + +L_Teach_A12: + if (@mexp < 220) + goto L_Teach_noexp; + mes "[Sagatha the Witch]"; + mes "\"You can call fluffies, too. But for them you must call out '" + get(.invocation$, "smfluffies") + "' instead, with white fluffy fur instead of a spike. And don't forget the root.\""; + goto L_practice; + +L_Teach_N11: + if (@mexp < 250) + goto L_Teach_noexp; + mes "[Sagatha the Witch]"; + mes "\"You can harden your skin with a hard spike. Hold it in your hands and speak '" + get(.invocation$, "protect") + "', then draw its hardness into your skin.\""; + next; + mes "[Sagatha the Witch]"; + mes "\"Or call it into someone else's skin, by saying that someone's name right after the '" + get(.invocation$, "protect") + "'.\""; + next; + mes "[Sagatha the Witch]"; + mes "\"You can also remove this spell from yourself if you say '" + get(.invocation$, "antiprotect") + "'.\""; + goto L_practice; + +L_Teach_noexp: + mes "[Sagatha the Witch]"; + mes "\"You must practice more first.\""; + next; + goto L_Main; + +L_Question: + callfunc "MagicTalkOptionsSetup"; + @ignore = @QQ_SAGATHA; + callfunc "MagicTalkMenu"; + + if (@c == 0) + goto L_Main; + if (@c == @QQ_ELANORE) + goto L_Q_elanore; + if (@c == @QQ_MANASEED) + goto L_Q_manaseed; + if (@c == @QQ_MANAPOTION) + goto L_Q_manapotion; + if (@c == @QQ_WYARA) + goto L_Q_wyara; + if (@c == @QQ_AULDSBEL) + goto L_Q_auldsbel; + if (@c == @QQ_IMP) + goto L_Q_imp; + if (@c == @QQ_OLDWIZ) + goto L_Q_old_wizard; + if (@c == @QQ_ASTRALSOUL) + goto L_Q_astralsoul; + + mes "[Sagatha the Witch]"; + mes "\"That doesn't concern you.\""; + next; + goto L_Main; + +L_Q_astralsoul: + mes "[Sagatha the Witch]"; + mes "\"Yes, there is a way to improve your magic.\""; + next; + mes "\"Did you ever hear about focusing?\""; + next; + mes "\"It is a mental ability, which improves you at a certain focused skill.\""; + next; + mes "\"Yes, I am focused on nature magic, but I cannot teach focusing. That is another realm of magic. Just a few people can really focus your brain to a specific art of magic.\""; + next; + mes "\"Maybe you should ask some other people experienced in magic.\""; + next; + goto L_Main; + +L_Q_old_wizard: + mes "[Sagatha the Witch]"; + mes "\"A kind and wise wizard.\""; + next; + goto L_Main; + +L_Q_imp: + mes "[Sagatha the Witch]"; + mes "\"He is an evil and cruel one. He lies and cheats and will try to take advantage of you. Stay away from him.\""; + next; + goto L_Main; + +L_Q_elanore: + mes "[Sagatha the Witch]"; + mes "\"Elanore is the Tulimshar town healer.\""; + next; + goto L_Main; + +L_Q_manaseed: + mes "[Sagatha the Witch]"; + if (!@has_magic && (MAGIC_FLAGS & MFLAG_TOUCHED_MANASEED)) + goto L_Q_manaseed_unabsorbed; + if (@has_magic) + goto L_Q_manaseed_m; + mes "\"There is a mana seed around here, but I don't see how this concerns you.\""; + next; + goto L_Main; + +L_Q_manaseed_unabsorbed: + mes "\"If the mana seed didn't pass its magic to you, you clearly aren't attuned to magic.\""; + next; + goto L_Main; + +L_Q_manaseed_m: + mes "\"You were lucky that the mana seed gave you its magic. I hope that you will use this power for something good now.\""; + next; + goto L_Main; + +L_Q_manapotion: + mes "[Sagatha the Witch]"; + mes "\"I won't make one without a cauldron, that would be wasteful. And I'm not going to start carrying a cauldron around.\""; + next; + goto L_Main; + +L_Q_wyara: + mes "[Sagatha the Witch]"; + mes "\"Wyara decided to live with humans, in Hurnscald. She tries to make the world a better place in her own way. Please be kind to her, she is a very good person.\""; + next; + goto L_Main; + +L_Q_auldsbel: + mes "[Sagatha the Witch]"; + mes "She frowns."; + mes "\"He's a transmutation wizard, member of the northern council. Reasonably competent wizard, too.\""; + next; + goto L_Main; + +L_close: + close; + +S_up_astral: + @SUP_id = SKILL_MAGIC_ASTRAL; + @SUP_name$ = "Astral Magic"; + callfunc "SkillUp"; + return; + +S_Update_Var: + set QUEST_MAGIC, + (QUEST_MAGIC & ~(@Q_MASK) + | (@Q_status << @Q_SHIFT)); + return; +} -- cgit v1.2.3-70-g09d2 From 6b99a6ec6e09edca97675e9745a5e02abf496881 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 10 Apr 2021 03:12:46 -0300 Subject: Flag -x --- npc/001-1/adrian.txt | 0 npc/001-1/ched.txt | 0 npc/001-1/children.txt | 0 npc/001-1/constable.txt | 0 npc/001-1/dock.txt | 0 npc/001-1/eomie.txt | 0 npc/001-1/ferry_master.txt | 0 npc/001-1/gate_guards.txt | 0 npc/001-1/gossip.txt | 0 npc/001-1/guards.txt | 0 npc/001-1/inac.txt | 0 npc/001-1/mapflags.txt | 0 npc/001-1/north_shops.txt | 0 npc/001-1/npcs.txt | 0 npc/001-1/sewer_east.txt | 0 npc/001-1/sewer_north.txt | 0 npc/001-1/stat_reset.txt | 0 npc/001-1/tinris.txt | 0 npc/001-1/tombstones.txt | 0 npc/001-1/weellos.txt | 0 npc/001-2/bank.txt | 0 npc/001-2/david.txt | 0 npc/001-2/fieri.txt | 0 npc/001-2/forge_shops.txt | 0 npc/001-2/government_building.txt | 0 npc/001-2/heathin.txt | 0 npc/001-2/jhedia.txt | 0 npc/001-2/manakins.txt | 0 npc/001-2/mapflags.txt | 0 npc/001-2/pauline.txt | 0 npc/001-2/sandra.txt | 0 npc/001-2/tathin.txt | 0 npc/001-2/tondar.txt | 0 npc/001-2/wizards.txt | 0 npc/001-2/yanis.txt | 0 npc/001-3/guards.txt | 0 npc/001-3/mapflags.txt | 0 npc/001-3/pvpflag.txt | 0 npc/002-1/anwar.txt | 0 npc/002-1/bard.txt | 0 npc/002-1/elanore.txt | 0 npc/002-1/gaurds.txt | 0 npc/002-1/itka.txt | 0 npc/002-1/lieutenant_dausen.txt | 0 npc/002-1/luca.txt | 0 npc/002-1/mapflags.txt | 0 npc/002-1/mine_debug.txt | 0 npc/002-1/nickos.txt | 0 npc/002-1/nomads.txt | 0 npc/002-1/npcs.txt | 0 npc/002-1/sarah.txt | 0 npc/002-1/soul-menhir.txt | 0 npc/002-1/stewen.txt | 0 npc/002-1/traveler.txt | 0 npc/002-2/bakery.txt | 0 npc/002-2/barber.txt | 0 npc/002-2/bleacher.txt | 0 npc/002-2/casino.txt | 0 npc/002-2/dedication.txt | 0 npc/002-2/hetchel.txt | 0 npc/002-2/imec.txt | 0 npc/002-2/inya.txt | 0 npc/002-2/kps.txt | 0 npc/002-2/kylian.txt | 0 npc/002-2/latoy.txt | 0 npc/002-2/mapflags.txt | 0 npc/002-2/omar.txt | 0 npc/002-2/phaet.txt | 0 npc/002-2/rebecca.txt | 0 npc/002-2/shops.txt | 0 npc/002-2/stranger.txt | 0 npc/002-2/troupe_leader.txt | 0 npc/002-3/mapflags.txt | 0 npc/002-3/merchant.txt | 0 npc/002-3/mining_camp_barrier.txt | 0 npc/002-3/nathan.txt | 0 npc/002-3/traveler.txt | 0 npc/002-4/mapflags.txt | 0 npc/002-4/mine_triggerone.txt | 0 npc/002-4/mine_triggerthree.txt | 0 npc/002-4/mine_triggertwo.txt | 0 npc/002-4/naem.txt | 0 npc/002-4/underground_palace_barrier.txt | 0 npc/002-5/chest.txt | 0 npc/002-5/mapflags.txt | 0 npc/002-5/sema.txt | 0 npc/004-3/mapflags.txt | 0 npc/004-4/mapflags.txt | 0 npc/004-5/chest.txt | 0 npc/004-5/mapflags.txt | 0 npc/005-3/mapflags.txt | 0 npc/006-1/mapflags.txt | 0 npc/006-1/mika.txt | 0 npc/006-1/miriam.txt | 0 npc/006-1/pachua.txt | 0 npc/006-1/spirit.txt | 0 npc/006-1/traveler.txt | 0 npc/006-1/tree.txt | 0 npc/006-2/mapflags.txt | 0 npc/006-2/npcs.txt | 0 npc/006-2/shops.txt | 0 npc/006-3/mapflags.txt | 0 npc/007-1/mapflags.txt | 0 npc/007-1/voltain.txt | 0 npc/007-2/witch.txt | 0 npc/008-1/andra.txt | 0 npc/008-1/annualeaster.txt | 0 npc/008-1/banu.txt | 0 npc/008-1/diryn.txt | 0 npc/008-1/dock.txt | 0 npc/008-1/george.txt | 0 npc/008-1/hinnak.txt | 0 npc/008-1/mapflags.txt | 0 npc/008-1/mikhail.txt | 0 npc/009-1/constable.txt | 0 npc/009-1/guide.txt | 0 npc/009-1/jack.txt | 0 npc/009-1/mapflags.txt | 0 npc/009-1/milly.txt | 0 npc/009-1/old_man.txt | 0 npc/009-1/old_woman.txt | 0 npc/009-1/sabine.txt | 0 npc/009-1/soul-menhir.txt | 0 npc/009-1/water_pump.txt | 0 npc/009-2/airlia.txt | 0 npc/009-2/alan.txt | 0 npc/009-2/bernard.txt | 0 npc/009-2/doctor.txt | 0 npc/009-2/drunks.txt | 0 npc/009-2/entertainer.txt | 0 npc/009-2/inspector.txt | 0 npc/009-2/kfahr.txt | 0 npc/009-2/lena.txt | 0 npc/009-2/mapflags.txt | 0 npc/009-2/misc.txt | 0 npc/009-2/nicholas.txt | 0 npc/009-2/nurse.txt | 0 npc/009-2/olana.txt | 0 npc/009-2/peter.txt | 0 npc/009-2/richard.txt | 0 npc/009-2/selim.txt | 0 npc/009-2/shops.txt | 0 npc/009-2/trader.txt | 0 npc/009-2/waitress.txt | 0 npc/009-2/wyara.txt | 0 npc/009-2/yalina.txt | 0 npc/009-3/mapflags.txt | 0 npc/009-3/sword.txt | 0 npc/009-3/warp.txt | 0 npc/009-4/barriers.txt | 0 npc/009-4/mapflags.txt | 0 npc/009-4/orum.txt | 0 npc/009-4/orum_warps.txt | 0 npc/009-4/torches.txt | 0 npc/009-4/waric.txt | 0 npc/009-5/mapflags.txt | 0 npc/009-6/brodomir.txt | 0 npc/009-6/mapflags.txt | 0 npc/009-7/battlemaster.txt | 0 npc/009-7/core.txt | 0 npc/009-7/debug.txt | 0 npc/009-7/eventHandler.txt | 0 npc/009-7/mapflags.txt | 0 npc/009-7/rouge.txt | 0 npc/009-7/shops.txt | 0 npc/009-7/trapdoor.txt | 0 npc/009-8/celestia.txt | 0 npc/009-8/mapflags.txt | 0 npc/010-1/mapflags.txt | 0 npc/010-2/band.txt | 0 npc/010-2/chef.txt | 0 npc/010-2/dimonds.txt | 0 npc/010-2/doug.txt | 0 npc/010-2/loratay.txt | 0 npc/010-2/mapflags.txt | 0 npc/010-2/workers.txt | 0 npc/011-1/alchemist.txt | 0 npc/011-1/auldsbel.txt | 0 npc/011-1/mapflags.txt | 0 npc/011-1/oscar.txt | 0 npc/011-1/shops.txt | 0 npc/011-3/hermit.txt | 0 npc/011-3/mapflags.txt | 0 npc/011-4/bl_barrier.txt | 0 npc/011-4/mapflags.txt | 0 npc/011-6/barrier.txt | 0 npc/011-6/bryant.txt | 0 npc/011-6/crastur.txt | 0 npc/011-6/mapflags.txt | 0 npc/012-1/amrak.txt | 0 npc/012-1/flowerpentagram2.txt | 0 npc/012-1/injured-mouboo.txt | 0 npc/012-1/mapflags.txt | 0 npc/012-1/shops.txt | 0 npc/012-3/mana-seed.txt | 0 npc/012-3/mapflags.txt | 0 npc/012-3/traveler.txt | 0 npc/012-3/warningsigns.txt | 0 npc/012-4/mapflags.txt | 0 npc/012-4/pvpflag.txt | 0 npc/013-1/flowerpentagram.txt | 0 npc/013-1/mapflags.txt | 0 npc/013-1/sagatha.txt | 0 npc/013-1/traveler.txt | 0 npc/013-2/apprentice.txt | 0 npc/013-2/mapflags.txt | 0 npc/013-2/notes.txt | 0 npc/013-2/wizard.txt | 0 npc/013-3/barrier.txt | 0 npc/013-3/mapflags.txt | 0 npc/013-3/mask_chest.txt | 0 npc/013-3/misc.txt | 0 npc/013-3/sword_chest.txt | 0 npc/014-1/mapflags.txt | 0 npc/014-1/wedding-officiator.txt | 0 npc/014-3/mapflags.txt | 0 npc/015-1/alice.txt | 0 npc/015-1/barrier.txt | 0 npc/015-1/mapflags.txt | 0 npc/015-1/sword.txt | 0 npc/015-3/barrier.txt | 0 npc/015-3/katze.txt | 0 npc/015-3/mapflags.txt | 0 npc/015-3/pot.txt | 0 npc/016-1/gwendolyn.txt | 0 npc/016-1/mapflags.txt | 0 npc/016-1/rossy.txt | 0 npc/017-1/flowerpentagram1.txt | 0 npc/017-1/flowerpentagram5.txt | 0 npc/017-1/mapflags.txt | 0 npc/017-2/mapflags.txt | 0 npc/017-3/mapflags.txt | 0 npc/017-4/guardingspirit.txt | 0 npc/017-4/mapflags.txt | 0 npc/017-4/orum.txt | 0 npc/017-4/waric.txt | 0 npc/017-9/mapflags.txt | 0 npc/017-9/npcs.txt | 0 npc/018-1/flowerpentagram3.txt | 0 npc/018-1/mapflags.txt | 0 npc/018-1/mike.txt | 0 npc/018-1/miners.txt | 0 npc/018-1/sword.txt | 0 npc/018-2/angus.txt | 0 npc/018-2/books.txt | 0 npc/018-2/caul.txt | 0 npc/018-2/mapflags.txt | 0 npc/018-2/miners.txt | 0 npc/018-2/receptionist.txt | 0 npc/018-3/bookcase.txt | 0 npc/018-3/evil-obelisk.txt | 0 npc/018-3/mapflags.txt | 0 npc/018-3/sword.txt | 0 npc/019-1/mapflags.txt | 0 npc/019-1/santa_helper.txt | 0 npc/019-1/snowman.txt | 0 npc/019-3/mapflags.txt | 0 npc/019-4/mapflags.txt | 0 npc/020-1/KrickKrackKrock.txt | 0 npc/020-1/mapflags.txt | 0 npc/020-1/rockscissor.txt | 0 npc/020-1/soul-menhir.txt | 0 npc/020-1/traveler.txt | 0 npc/020-1/well.txt | 0 npc/020-2/baktar.txt | 0 npc/020-2/banker.txt | 0 npc/020-2/furquest.txt | 0 npc/020-2/mapflags.txt | 0 npc/020-2/shops.txt | 0 npc/020-3/mapflags.txt | 0 npc/021-3/mapflags.txt | 0 npc/025-1/barrier.txt | 0 npc/025-1/mapflags.txt | 0 npc/025-1/reset.txt | 0 npc/025-3/barriers.txt | 0 npc/025-3/mapflags.txt | 0 npc/025-4/battlecaves.txt | 0 npc/025-4/clauquer.txt | 0 npc/025-4/julia.txt | 0 npc/025-4/mapflags.txt | 0 npc/026-1/evil_guard.txt | 0 npc/026-1/headless_man.txt | 0 npc/026-1/husband.txt | 0 npc/026-1/mapflags.txt | 0 npc/026-1/sign.txt | 0 npc/026-1/soul-menhir.txt | 0 npc/026-1/traveler.txt | 0 npc/026-2/barman.txt | 0 npc/026-2/cerhan.txt | 0 npc/026-2/crying_child.txt | 0 npc/026-2/diary.txt | 0 npc/026-2/door.txt | 0 npc/026-2/eurni.txt | 0 npc/026-2/golbenez.txt | 0 npc/026-2/gy_inn_shops.txt | 0 npc/026-2/innkeeper.txt | 0 npc/026-2/lover.txt | 0 npc/026-2/mapflags.txt | 0 npc/026-2/testnpcs.txt | 0 npc/026-2/werewolf.txt | 0 npc/027-1/crypt.txt | 0 npc/027-1/graves.txt | 0 npc/027-1/mapflags.txt | 0 npc/027-2/alacrius.txt | 0 npc/027-2/caretaker.txt | 0 npc/027-2/mapflags.txt | 0 npc/027-2/thurston.txt | 0 npc/027-3/casket_traps.txt | 0 npc/027-3/general_krukan_door.txt | 0 npc/027-3/mapflags.txt | 0 npc/027-3/monsters.txt | 0 npc/027-4/casket_traps.txt | 0 npc/027-4/general_razha_door.txt | 0 npc/027-4/mapflags.txt | 0 npc/027-4/monsters.txt | 0 npc/027-5/casket_traps.txt | 0 npc/027-5/general_terogan_door.txt | 0 npc/027-5/mapflags.txt | 0 npc/027-6/casket_traps.txt | 0 npc/027-6/general_krukan.txt | 0 npc/027-6/general_krukan_exitdoor.txt | 0 npc/027-6/mapflags.txt | 0 npc/027-7/general_razha.txt | 0 npc/027-7/general_razha_exitdoor.txt | 0 npc/027-7/mapflags.txt | 0 npc/027-8/general_terogan.txt | 0 npc/027-8/general_terogan_exitdoor.txt | 0 npc/027-8/mapflags.txt | 0 npc/028-1/mapflags.txt | 0 npc/028-1/portal.txt | 0 npc/028-3/mapflags.txt | 0 npc/029-1/aahna.txt | 0 npc/029-1/barrier.txt | 0 npc/029-1/dock.txt | 0 npc/029-1/ferry_master.txt | 0 npc/029-1/hasan.txt | 0 npc/029-1/hideandseek.txt | 0 npc/029-1/kaan.txt | 0 npc/029-1/liana.txt | 0 npc/029-1/mapflags.txt | 0 npc/029-1/monster_guide.txt | 0 npc/029-1/rewards_master.txt | 0 npc/029-1/soul-menhir.txt | 0 npc/029-1/traveler.txt | 0 npc/029-1/tutorial.txt | 0 npc/029-1/valon.txt | 0 npc/029-1/vincent.txt | 0 npc/029-1/zegas.txt | 0 npc/029-2/bankroom.txt | 0 npc/029-2/barrels.txt | 0 npc/029-2/barrels_config.txt | 0 npc/029-2/cynric.txt | 0 npc/029-2/mapflags.txt | 0 npc/029-2/morgan.txt | 0 npc/029-2/nyle.txt | 0 npc/029-2/sorfina.txt | 0 npc/029-2/stat_reset.txt | 0 npc/029-2/tanisha.txt | 0 npc/029-2/two_arms.txt | 0 npc/029-3/barrier.txt | 0 npc/029-3/mapflags.txt | 0 npc/029-3/parua.txt | 0 npc/030-2/avalia.txt | 0 npc/030-2/basic_npcs.txt | 0 npc/030-2/bedding_helper.txt | 0 npc/030-2/chief_helper.txt | 0 npc/030-2/eljas.txt | 0 npc/030-2/empty_boxes_helper.txt | 0 npc/030-2/glitter_helper.txt | 0 npc/030-2/guards.txt | 0 npc/030-2/mapflags.txt | 0 npc/030-2/present_helper.txt | 0 npc/030-2/roasted_acorns_helper.txt | 0 npc/030-2/shipping_helper.txt | 0 npc/030-2/storage_helper.txt | 0 npc/030-2/wrapping_paper_helper.txt | 0 npc/030-3/mapflags.txt | 0 npc/030-3/orum_homunculus.txt | 0 npc/030-4/mana_battery.txt | 0 npc/030-4/mapflags.txt | 0 npc/031-1/angelaOutside.txt | 0 npc/031-1/dock.txt | 0 npc/031-1/frozenbeard.txt | 0 npc/031-1/house.txt | 0 npc/031-1/mapflags.txt | 0 npc/031-2/angelaHouse.txt | 0 npc/031-2/cindyHouse.txt | 0 npc/031-2/mapflags.txt | 0 npc/031-3/labyrinth.txt | 0 npc/031-3/mapflags.txt | 0 npc/031-4/barrier.txt | 0 npc/031-4/cindyCave.txt | 0 npc/031-4/mapflags.txt | 0 npc/032-3/mapflags.txt | 0 npc/033-1/backDoor.txt | 0 npc/033-1/barbarianinit.txt | 0 npc/033-1/birrod.txt | 0 npc/033-1/kimarr.txt | 0 npc/033-1/mapflags.txt | 0 npc/033-1/traveler.txt | 0 npc/033-1/yerrnk.txt | 0 npc/034-1/ambushs.txt | 0 npc/034-1/mapflags.txt | 0 npc/034-1/yetiSpawn.txt | 0 npc/034-2/mapflags.txt | 0 npc/035-2/casino.txt | 0 npc/035-2/emblems.txt | 0 npc/035-2/koga.txt | 0 npc/035-2/mapflags.txt | 0 npc/035-2/shops.txt | 0 npc/036-2/casino.txt | 0 npc/036-2/emblems.txt | 0 npc/036-2/koga-candor.txt | 0 npc/036-2/mapflags.txt | 0 npc/036-2/shops.txt | 0 npc/043-3/mapflags.txt | 0 npc/043-4/mapflags.txt | 0 npc/045-1/mapflags.txt | 0 npc/046-1/mapflags.txt | 0 npc/046-3/mapflags.txt | 0 npc/047-1/mapflags.txt | 0 npc/047-3/mapflags.txt | 0 npc/048-2/bluesageConfig.txt | 0 npc/048-2/helperAccused.txt | 0 npc/048-2/helperBookpages1.txt | 0 npc/048-2/helperBookpages2.txt | 0 npc/048-2/helperBookpages3.txt | 0 npc/048-2/helperChief.txt | 0 npc/048-2/helperCleaning1.txt | 0 npc/048-2/helperCleaning2.txt | 0 npc/048-2/helperCleaning3.txt | 0 npc/048-2/helperCleaning4.txt | 0 npc/048-2/helperCleaning5.txt | 0 npc/048-2/helperJanitor.txt | 0 npc/048-2/helperMInk.txt | 0 npc/048-2/helperMReed.txt | 0 npc/048-2/helperMSilk.txt | 0 npc/048-2/helperMYetiClaw.txt | 0 npc/048-2/helperResting1.txt | 0 npc/048-2/helperResting2.txt | 0 npc/048-2/mapflags.txt | 0 npc/048-2/sageNikolai.txt | 0 npc/048-2/slimes.txt | 0 npc/048-2/traveler.txt | 0 npc/048-2/visitors.txt | 0 npc/051-1/desert.txt | 0 npc/051-1/desertmonsters.txt | 0 npc/051-1/forest.txt | 0 npc/051-1/forestmonsters.txt | 0 npc/051-1/janitor.txt | 0 npc/051-1/mapflags.txt | 0 npc/051-3/ambush.txt | 0 npc/051-3/jailslimes.txt | 0 npc/051-3/janitor.txt | 0 npc/051-3/locks.txt | 0 npc/051-3/mapflags.txt | 0 npc/051-3/reinforcements.txt | 0 npc/052-1/channelling.txt | 0 npc/052-1/janitor.txt | 0 npc/052-1/mapflags.txt | 0 npc/052-2/chest.txt | 0 npc/052-2/janitor.txt | 0 npc/052-2/lobby.txt | 0 npc/052-2/mapflags.txt | 0 npc/052-2/partyroom.txt | 0 npc/052-2/storage.txt | 0 npc/055-1/flowerpentagram4.txt | 0 npc/055-1/mapflags.txt | 0 npc/055-1/pumpkins.txt | 0 npc/055-1/traveler.txt | 0 npc/055-3/mapflags.txt | 0 npc/056-2/barrier.txt | 0 npc/056-2/mapflags.txt | 0 npc/056-2/mirak.txt | 0 npc/056-2/notes.txt | 0 npc/057-1/mapflags.txt | 0 npc/_import.txt | 0 npc/annuals/check_time.txt | 0 npc/annuals/fathertime.txt | 0 npc/annuals/halloween/config.txt | 0 npc/annuals/halloween/debug.txt | 0 npc/annuals/halloween/munro.txt | 0 npc/annuals/halloween/trick_or_treat.txt | 0 npc/annuals/tree_beard.txt | 0 npc/annuals/xmas/barriers.txt | 0 npc/annuals/xmas/config.txt | 0 npc/annuals/xmas/core.txt | 0 npc/annuals/xmas/debug.txt | 0 npc/annuals/xmas/helpers.txt | 0 npc/annuals/xmas/list.txt | 0 npc/annuals/xmas/mobmanager.txt | 0 npc/annuals/xmas/reagents.txt | 0 npc/annuals/xmas/states.txt | 0 npc/botcheck/mapflags.txt | 0 npc/commands/debug.txt | 0 npc/commands/numa.txt | 0 npc/functions/DyeConfig.txt | 0 npc/functions/announcements.txt | 0 npc/functions/banker.txt | 0 npc/functions/barber.txt | 0 npc/functions/clear_vars.txt | 0 npc/functions/dailyquest.txt | 0 npc/functions/default_npc_checks.txt | 0 npc/functions/dynamic_menu.txt | 0 npc/functions/evil_obelisk.txt | 0 npc/functions/ferry.txt | 0 npc/functions/game_rules.txt | 0 npc/functions/global_event_handler.txt | 0 npc/functions/gm_island.txt | 0 npc/functions/headstyles.txt | 0 npc/functions/inn.txt | 0 npc/functions/jesusalvatr.txt | 0 npc/functions/lockpicking.txt | 0 npc/functions/magic.txt | 0 npc/functions/mob_points.txt | 0 npc/functions/motd.txt | 0 npc/functions/motdconfig.txt | 0 npc/functions/process_equip.txt | 0 npc/functions/quiz.txt | 0 npc/functions/slot_machine.txt | 0 npc/functions/soul_menhir.txt | 0 npc/functions/stat_reset.txt | 0 npc/functions/time.txt | 0 npc/functions/travelers.txt | 0 npc/functions/undead_debug.txt | 0 npc/functions/water_bottle.txt | 0 npc/items/check_wand.txt | 0 npc/items/launcher_ammo.txt | 0 npc/items/mirror.txt | 0 npc/items/pickled_beets.txt | 0 npc/items/purification_potion.txt | 0 npc/items/require_stat.txt | 0 npc/items/restricted_item.txt | 0 npc/items/rubber_bat.txt | 0 npc/items/scissors.txt | 0 npc/items/shock_sweet.txt | 0 npc/items/unequipcb.txt | 0 npc/items/unreleased_item.txt | 0 npc/items/warpTowels.txt | 0 npc/pre-re/scripts_main.conf | 0 540 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 npc/001-1/adrian.txt mode change 100755 => 100644 npc/001-1/ched.txt mode change 100755 => 100644 npc/001-1/children.txt mode change 100755 => 100644 npc/001-1/constable.txt mode change 100755 => 100644 npc/001-1/dock.txt mode change 100755 => 100644 npc/001-1/eomie.txt mode change 100755 => 100644 npc/001-1/ferry_master.txt mode change 100755 => 100644 npc/001-1/gate_guards.txt mode change 100755 => 100644 npc/001-1/gossip.txt mode change 100755 => 100644 npc/001-1/guards.txt mode change 100755 => 100644 npc/001-1/inac.txt mode change 100755 => 100644 npc/001-1/mapflags.txt mode change 100755 => 100644 npc/001-1/north_shops.txt mode change 100755 => 100644 npc/001-1/npcs.txt mode change 100755 => 100644 npc/001-1/sewer_east.txt mode change 100755 => 100644 npc/001-1/sewer_north.txt mode change 100755 => 100644 npc/001-1/stat_reset.txt mode change 100755 => 100644 npc/001-1/tinris.txt mode change 100755 => 100644 npc/001-1/tombstones.txt mode change 100755 => 100644 npc/001-1/weellos.txt mode change 100755 => 100644 npc/001-2/bank.txt mode change 100755 => 100644 npc/001-2/david.txt mode change 100755 => 100644 npc/001-2/fieri.txt mode change 100755 => 100644 npc/001-2/forge_shops.txt mode change 100755 => 100644 npc/001-2/government_building.txt mode change 100755 => 100644 npc/001-2/heathin.txt mode change 100755 => 100644 npc/001-2/jhedia.txt mode change 100755 => 100644 npc/001-2/manakins.txt mode change 100755 => 100644 npc/001-2/mapflags.txt mode change 100755 => 100644 npc/001-2/pauline.txt mode change 100755 => 100644 npc/001-2/sandra.txt mode change 100755 => 100644 npc/001-2/tathin.txt mode change 100755 => 100644 npc/001-2/tondar.txt mode change 100755 => 100644 npc/001-2/wizards.txt mode change 100755 => 100644 npc/001-2/yanis.txt mode change 100755 => 100644 npc/001-3/guards.txt mode change 100755 => 100644 npc/001-3/mapflags.txt mode change 100755 => 100644 npc/001-3/pvpflag.txt mode change 100755 => 100644 npc/002-1/anwar.txt mode change 100755 => 100644 npc/002-1/bard.txt mode change 100755 => 100644 npc/002-1/elanore.txt mode change 100755 => 100644 npc/002-1/gaurds.txt mode change 100755 => 100644 npc/002-1/itka.txt mode change 100755 => 100644 npc/002-1/lieutenant_dausen.txt mode change 100755 => 100644 npc/002-1/luca.txt mode change 100755 => 100644 npc/002-1/mapflags.txt mode change 100755 => 100644 npc/002-1/mine_debug.txt mode change 100755 => 100644 npc/002-1/nickos.txt mode change 100755 => 100644 npc/002-1/nomads.txt mode change 100755 => 100644 npc/002-1/npcs.txt mode change 100755 => 100644 npc/002-1/sarah.txt mode change 100755 => 100644 npc/002-1/soul-menhir.txt mode change 100755 => 100644 npc/002-1/stewen.txt mode change 100755 => 100644 npc/002-1/traveler.txt mode change 100755 => 100644 npc/002-2/bakery.txt mode change 100755 => 100644 npc/002-2/barber.txt mode change 100755 => 100644 npc/002-2/bleacher.txt mode change 100755 => 100644 npc/002-2/casino.txt mode change 100755 => 100644 npc/002-2/dedication.txt mode change 100755 => 100644 npc/002-2/hetchel.txt mode change 100755 => 100644 npc/002-2/imec.txt mode change 100755 => 100644 npc/002-2/inya.txt mode change 100755 => 100644 npc/002-2/kps.txt mode change 100755 => 100644 npc/002-2/kylian.txt mode change 100755 => 100644 npc/002-2/latoy.txt mode change 100755 => 100644 npc/002-2/mapflags.txt mode change 100755 => 100644 npc/002-2/omar.txt mode change 100755 => 100644 npc/002-2/phaet.txt mode change 100755 => 100644 npc/002-2/rebecca.txt mode change 100755 => 100644 npc/002-2/shops.txt mode change 100755 => 100644 npc/002-2/stranger.txt mode change 100755 => 100644 npc/002-2/troupe_leader.txt mode change 100755 => 100644 npc/002-3/mapflags.txt mode change 100755 => 100644 npc/002-3/merchant.txt mode change 100755 => 100644 npc/002-3/mining_camp_barrier.txt mode change 100755 => 100644 npc/002-3/nathan.txt mode change 100755 => 100644 npc/002-3/traveler.txt mode change 100755 => 100644 npc/002-4/mapflags.txt mode change 100755 => 100644 npc/002-4/mine_triggerone.txt mode change 100755 => 100644 npc/002-4/mine_triggerthree.txt mode change 100755 => 100644 npc/002-4/mine_triggertwo.txt mode change 100755 => 100644 npc/002-4/naem.txt mode change 100755 => 100644 npc/002-4/underground_palace_barrier.txt mode change 100755 => 100644 npc/002-5/chest.txt mode change 100755 => 100644 npc/002-5/mapflags.txt mode change 100755 => 100644 npc/002-5/sema.txt mode change 100755 => 100644 npc/004-3/mapflags.txt mode change 100755 => 100644 npc/004-4/mapflags.txt mode change 100755 => 100644 npc/004-5/chest.txt mode change 100755 => 100644 npc/004-5/mapflags.txt mode change 100755 => 100644 npc/005-3/mapflags.txt mode change 100755 => 100644 npc/006-1/mapflags.txt mode change 100755 => 100644 npc/006-1/mika.txt mode change 100755 => 100644 npc/006-1/miriam.txt mode change 100755 => 100644 npc/006-1/pachua.txt mode change 100755 => 100644 npc/006-1/spirit.txt mode change 100755 => 100644 npc/006-1/traveler.txt mode change 100755 => 100644 npc/006-1/tree.txt mode change 100755 => 100644 npc/006-2/mapflags.txt mode change 100755 => 100644 npc/006-2/npcs.txt mode change 100755 => 100644 npc/006-2/shops.txt mode change 100755 => 100644 npc/006-3/mapflags.txt mode change 100755 => 100644 npc/007-1/mapflags.txt mode change 100755 => 100644 npc/007-1/voltain.txt mode change 100755 => 100644 npc/007-2/witch.txt mode change 100755 => 100644 npc/008-1/andra.txt mode change 100755 => 100644 npc/008-1/annualeaster.txt mode change 100755 => 100644 npc/008-1/banu.txt mode change 100755 => 100644 npc/008-1/diryn.txt mode change 100755 => 100644 npc/008-1/dock.txt mode change 100755 => 100644 npc/008-1/george.txt mode change 100755 => 100644 npc/008-1/hinnak.txt mode change 100755 => 100644 npc/008-1/mapflags.txt mode change 100755 => 100644 npc/008-1/mikhail.txt mode change 100755 => 100644 npc/009-1/constable.txt mode change 100755 => 100644 npc/009-1/guide.txt mode change 100755 => 100644 npc/009-1/jack.txt mode change 100755 => 100644 npc/009-1/mapflags.txt mode change 100755 => 100644 npc/009-1/milly.txt mode change 100755 => 100644 npc/009-1/old_man.txt mode change 100755 => 100644 npc/009-1/old_woman.txt mode change 100755 => 100644 npc/009-1/sabine.txt mode change 100755 => 100644 npc/009-1/soul-menhir.txt mode change 100755 => 100644 npc/009-1/water_pump.txt mode change 100755 => 100644 npc/009-2/airlia.txt mode change 100755 => 100644 npc/009-2/alan.txt mode change 100755 => 100644 npc/009-2/bernard.txt mode change 100755 => 100644 npc/009-2/doctor.txt mode change 100755 => 100644 npc/009-2/drunks.txt mode change 100755 => 100644 npc/009-2/entertainer.txt mode change 100755 => 100644 npc/009-2/inspector.txt mode change 100755 => 100644 npc/009-2/kfahr.txt mode change 100755 => 100644 npc/009-2/lena.txt mode change 100755 => 100644 npc/009-2/mapflags.txt mode change 100755 => 100644 npc/009-2/misc.txt mode change 100755 => 100644 npc/009-2/nicholas.txt mode change 100755 => 100644 npc/009-2/nurse.txt mode change 100755 => 100644 npc/009-2/olana.txt mode change 100755 => 100644 npc/009-2/peter.txt mode change 100755 => 100644 npc/009-2/richard.txt mode change 100755 => 100644 npc/009-2/selim.txt mode change 100755 => 100644 npc/009-2/shops.txt mode change 100755 => 100644 npc/009-2/trader.txt mode change 100755 => 100644 npc/009-2/waitress.txt mode change 100755 => 100644 npc/009-2/wyara.txt mode change 100755 => 100644 npc/009-2/yalina.txt mode change 100755 => 100644 npc/009-3/mapflags.txt mode change 100755 => 100644 npc/009-3/sword.txt mode change 100755 => 100644 npc/009-3/warp.txt mode change 100755 => 100644 npc/009-4/barriers.txt mode change 100755 => 100644 npc/009-4/mapflags.txt mode change 100755 => 100644 npc/009-4/orum.txt mode change 100755 => 100644 npc/009-4/orum_warps.txt mode change 100755 => 100644 npc/009-4/torches.txt mode change 100755 => 100644 npc/009-4/waric.txt mode change 100755 => 100644 npc/009-5/mapflags.txt mode change 100755 => 100644 npc/009-6/brodomir.txt mode change 100755 => 100644 npc/009-6/mapflags.txt mode change 100755 => 100644 npc/009-7/battlemaster.txt mode change 100755 => 100644 npc/009-7/core.txt mode change 100755 => 100644 npc/009-7/debug.txt mode change 100755 => 100644 npc/009-7/eventHandler.txt mode change 100755 => 100644 npc/009-7/mapflags.txt mode change 100755 => 100644 npc/009-7/rouge.txt mode change 100755 => 100644 npc/009-7/shops.txt mode change 100755 => 100644 npc/009-7/trapdoor.txt mode change 100755 => 100644 npc/009-8/celestia.txt mode change 100755 => 100644 npc/009-8/mapflags.txt mode change 100755 => 100644 npc/010-1/mapflags.txt mode change 100755 => 100644 npc/010-2/band.txt mode change 100755 => 100644 npc/010-2/chef.txt mode change 100755 => 100644 npc/010-2/dimonds.txt mode change 100755 => 100644 npc/010-2/doug.txt mode change 100755 => 100644 npc/010-2/loratay.txt mode change 100755 => 100644 npc/010-2/mapflags.txt mode change 100755 => 100644 npc/010-2/workers.txt mode change 100755 => 100644 npc/011-1/alchemist.txt mode change 100755 => 100644 npc/011-1/auldsbel.txt mode change 100755 => 100644 npc/011-1/mapflags.txt mode change 100755 => 100644 npc/011-1/oscar.txt mode change 100755 => 100644 npc/011-1/shops.txt mode change 100755 => 100644 npc/011-3/hermit.txt mode change 100755 => 100644 npc/011-3/mapflags.txt mode change 100755 => 100644 npc/011-4/bl_barrier.txt mode change 100755 => 100644 npc/011-4/mapflags.txt mode change 100755 => 100644 npc/011-6/barrier.txt mode change 100755 => 100644 npc/011-6/bryant.txt mode change 100755 => 100644 npc/011-6/crastur.txt mode change 100755 => 100644 npc/011-6/mapflags.txt mode change 100755 => 100644 npc/012-1/amrak.txt mode change 100755 => 100644 npc/012-1/flowerpentagram2.txt mode change 100755 => 100644 npc/012-1/injured-mouboo.txt mode change 100755 => 100644 npc/012-1/mapflags.txt mode change 100755 => 100644 npc/012-1/shops.txt mode change 100755 => 100644 npc/012-3/mana-seed.txt mode change 100755 => 100644 npc/012-3/mapflags.txt mode change 100755 => 100644 npc/012-3/traveler.txt mode change 100755 => 100644 npc/012-3/warningsigns.txt mode change 100755 => 100644 npc/012-4/mapflags.txt mode change 100755 => 100644 npc/012-4/pvpflag.txt mode change 100755 => 100644 npc/013-1/flowerpentagram.txt mode change 100755 => 100644 npc/013-1/mapflags.txt mode change 100755 => 100644 npc/013-1/sagatha.txt mode change 100755 => 100644 npc/013-1/traveler.txt mode change 100755 => 100644 npc/013-2/apprentice.txt mode change 100755 => 100644 npc/013-2/mapflags.txt mode change 100755 => 100644 npc/013-2/notes.txt mode change 100755 => 100644 npc/013-2/wizard.txt mode change 100755 => 100644 npc/013-3/barrier.txt mode change 100755 => 100644 npc/013-3/mapflags.txt mode change 100755 => 100644 npc/013-3/mask_chest.txt mode change 100755 => 100644 npc/013-3/misc.txt mode change 100755 => 100644 npc/013-3/sword_chest.txt mode change 100755 => 100644 npc/014-1/mapflags.txt mode change 100755 => 100644 npc/014-1/wedding-officiator.txt mode change 100755 => 100644 npc/014-3/mapflags.txt mode change 100755 => 100644 npc/015-1/alice.txt mode change 100755 => 100644 npc/015-1/barrier.txt mode change 100755 => 100644 npc/015-1/mapflags.txt mode change 100755 => 100644 npc/015-1/sword.txt mode change 100755 => 100644 npc/015-3/barrier.txt mode change 100755 => 100644 npc/015-3/katze.txt mode change 100755 => 100644 npc/015-3/mapflags.txt mode change 100755 => 100644 npc/015-3/pot.txt mode change 100755 => 100644 npc/016-1/gwendolyn.txt mode change 100755 => 100644 npc/016-1/mapflags.txt mode change 100755 => 100644 npc/016-1/rossy.txt mode change 100755 => 100644 npc/017-1/flowerpentagram1.txt mode change 100755 => 100644 npc/017-1/flowerpentagram5.txt mode change 100755 => 100644 npc/017-1/mapflags.txt mode change 100755 => 100644 npc/017-2/mapflags.txt mode change 100755 => 100644 npc/017-3/mapflags.txt mode change 100755 => 100644 npc/017-4/guardingspirit.txt mode change 100755 => 100644 npc/017-4/mapflags.txt mode change 100755 => 100644 npc/017-4/orum.txt mode change 100755 => 100644 npc/017-4/waric.txt mode change 100755 => 100644 npc/017-9/mapflags.txt mode change 100755 => 100644 npc/017-9/npcs.txt mode change 100755 => 100644 npc/018-1/flowerpentagram3.txt mode change 100755 => 100644 npc/018-1/mapflags.txt mode change 100755 => 100644 npc/018-1/mike.txt mode change 100755 => 100644 npc/018-1/miners.txt mode change 100755 => 100644 npc/018-1/sword.txt mode change 100755 => 100644 npc/018-2/angus.txt mode change 100755 => 100644 npc/018-2/books.txt mode change 100755 => 100644 npc/018-2/caul.txt mode change 100755 => 100644 npc/018-2/mapflags.txt mode change 100755 => 100644 npc/018-2/miners.txt mode change 100755 => 100644 npc/018-2/receptionist.txt mode change 100755 => 100644 npc/018-3/bookcase.txt mode change 100755 => 100644 npc/018-3/evil-obelisk.txt mode change 100755 => 100644 npc/018-3/mapflags.txt mode change 100755 => 100644 npc/018-3/sword.txt mode change 100755 => 100644 npc/019-1/mapflags.txt mode change 100755 => 100644 npc/019-1/santa_helper.txt mode change 100755 => 100644 npc/019-1/snowman.txt mode change 100755 => 100644 npc/019-3/mapflags.txt mode change 100755 => 100644 npc/019-4/mapflags.txt mode change 100755 => 100644 npc/020-1/KrickKrackKrock.txt mode change 100755 => 100644 npc/020-1/mapflags.txt mode change 100755 => 100644 npc/020-1/rockscissor.txt mode change 100755 => 100644 npc/020-1/soul-menhir.txt mode change 100755 => 100644 npc/020-1/traveler.txt mode change 100755 => 100644 npc/020-1/well.txt mode change 100755 => 100644 npc/020-2/baktar.txt mode change 100755 => 100644 npc/020-2/banker.txt mode change 100755 => 100644 npc/020-2/furquest.txt mode change 100755 => 100644 npc/020-2/mapflags.txt mode change 100755 => 100644 npc/020-2/shops.txt mode change 100755 => 100644 npc/020-3/mapflags.txt mode change 100755 => 100644 npc/021-3/mapflags.txt mode change 100755 => 100644 npc/025-1/barrier.txt mode change 100755 => 100644 npc/025-1/mapflags.txt mode change 100755 => 100644 npc/025-1/reset.txt mode change 100755 => 100644 npc/025-3/barriers.txt mode change 100755 => 100644 npc/025-3/mapflags.txt mode change 100755 => 100644 npc/025-4/battlecaves.txt mode change 100755 => 100644 npc/025-4/clauquer.txt mode change 100755 => 100644 npc/025-4/julia.txt mode change 100755 => 100644 npc/025-4/mapflags.txt mode change 100755 => 100644 npc/026-1/evil_guard.txt mode change 100755 => 100644 npc/026-1/headless_man.txt mode change 100755 => 100644 npc/026-1/husband.txt mode change 100755 => 100644 npc/026-1/mapflags.txt mode change 100755 => 100644 npc/026-1/sign.txt mode change 100755 => 100644 npc/026-1/soul-menhir.txt mode change 100755 => 100644 npc/026-1/traveler.txt mode change 100755 => 100644 npc/026-2/barman.txt mode change 100755 => 100644 npc/026-2/cerhan.txt mode change 100755 => 100644 npc/026-2/crying_child.txt mode change 100755 => 100644 npc/026-2/diary.txt mode change 100755 => 100644 npc/026-2/door.txt mode change 100755 => 100644 npc/026-2/eurni.txt mode change 100755 => 100644 npc/026-2/golbenez.txt mode change 100755 => 100644 npc/026-2/gy_inn_shops.txt mode change 100755 => 100644 npc/026-2/innkeeper.txt mode change 100755 => 100644 npc/026-2/lover.txt mode change 100755 => 100644 npc/026-2/mapflags.txt mode change 100755 => 100644 npc/026-2/testnpcs.txt mode change 100755 => 100644 npc/026-2/werewolf.txt mode change 100755 => 100644 npc/027-1/crypt.txt mode change 100755 => 100644 npc/027-1/graves.txt mode change 100755 => 100644 npc/027-1/mapflags.txt mode change 100755 => 100644 npc/027-2/alacrius.txt mode change 100755 => 100644 npc/027-2/caretaker.txt mode change 100755 => 100644 npc/027-2/mapflags.txt mode change 100755 => 100644 npc/027-2/thurston.txt mode change 100755 => 100644 npc/027-3/casket_traps.txt mode change 100755 => 100644 npc/027-3/general_krukan_door.txt mode change 100755 => 100644 npc/027-3/mapflags.txt mode change 100755 => 100644 npc/027-3/monsters.txt mode change 100755 => 100644 npc/027-4/casket_traps.txt mode change 100755 => 100644 npc/027-4/general_razha_door.txt mode change 100755 => 100644 npc/027-4/mapflags.txt mode change 100755 => 100644 npc/027-4/monsters.txt mode change 100755 => 100644 npc/027-5/casket_traps.txt mode change 100755 => 100644 npc/027-5/general_terogan_door.txt mode change 100755 => 100644 npc/027-5/mapflags.txt mode change 100755 => 100644 npc/027-6/casket_traps.txt mode change 100755 => 100644 npc/027-6/general_krukan.txt mode change 100755 => 100644 npc/027-6/general_krukan_exitdoor.txt mode change 100755 => 100644 npc/027-6/mapflags.txt mode change 100755 => 100644 npc/027-7/general_razha.txt mode change 100755 => 100644 npc/027-7/general_razha_exitdoor.txt mode change 100755 => 100644 npc/027-7/mapflags.txt mode change 100755 => 100644 npc/027-8/general_terogan.txt mode change 100755 => 100644 npc/027-8/general_terogan_exitdoor.txt mode change 100755 => 100644 npc/027-8/mapflags.txt mode change 100755 => 100644 npc/028-1/mapflags.txt mode change 100755 => 100644 npc/028-1/portal.txt mode change 100755 => 100644 npc/028-3/mapflags.txt mode change 100755 => 100644 npc/029-1/aahna.txt mode change 100755 => 100644 npc/029-1/barrier.txt mode change 100755 => 100644 npc/029-1/dock.txt mode change 100755 => 100644 npc/029-1/ferry_master.txt mode change 100755 => 100644 npc/029-1/hasan.txt mode change 100755 => 100644 npc/029-1/hideandseek.txt mode change 100755 => 100644 npc/029-1/kaan.txt mode change 100755 => 100644 npc/029-1/liana.txt mode change 100755 => 100644 npc/029-1/mapflags.txt mode change 100755 => 100644 npc/029-1/monster_guide.txt mode change 100755 => 100644 npc/029-1/rewards_master.txt mode change 100755 => 100644 npc/029-1/soul-menhir.txt mode change 100755 => 100644 npc/029-1/traveler.txt mode change 100755 => 100644 npc/029-1/tutorial.txt mode change 100755 => 100644 npc/029-1/valon.txt mode change 100755 => 100644 npc/029-1/vincent.txt mode change 100755 => 100644 npc/029-1/zegas.txt mode change 100755 => 100644 npc/029-2/bankroom.txt mode change 100755 => 100644 npc/029-2/barrels.txt mode change 100755 => 100644 npc/029-2/barrels_config.txt mode change 100755 => 100644 npc/029-2/cynric.txt mode change 100755 => 100644 npc/029-2/mapflags.txt mode change 100755 => 100644 npc/029-2/morgan.txt mode change 100755 => 100644 npc/029-2/nyle.txt mode change 100755 => 100644 npc/029-2/sorfina.txt mode change 100755 => 100644 npc/029-2/stat_reset.txt mode change 100755 => 100644 npc/029-2/tanisha.txt mode change 100755 => 100644 npc/029-2/two_arms.txt mode change 100755 => 100644 npc/029-3/barrier.txt mode change 100755 => 100644 npc/029-3/mapflags.txt mode change 100755 => 100644 npc/029-3/parua.txt mode change 100755 => 100644 npc/030-2/avalia.txt mode change 100755 => 100644 npc/030-2/basic_npcs.txt mode change 100755 => 100644 npc/030-2/bedding_helper.txt mode change 100755 => 100644 npc/030-2/chief_helper.txt mode change 100755 => 100644 npc/030-2/eljas.txt mode change 100755 => 100644 npc/030-2/empty_boxes_helper.txt mode change 100755 => 100644 npc/030-2/glitter_helper.txt mode change 100755 => 100644 npc/030-2/guards.txt mode change 100755 => 100644 npc/030-2/mapflags.txt mode change 100755 => 100644 npc/030-2/present_helper.txt mode change 100755 => 100644 npc/030-2/roasted_acorns_helper.txt mode change 100755 => 100644 npc/030-2/shipping_helper.txt mode change 100755 => 100644 npc/030-2/storage_helper.txt mode change 100755 => 100644 npc/030-2/wrapping_paper_helper.txt mode change 100755 => 100644 npc/030-3/mapflags.txt mode change 100755 => 100644 npc/030-3/orum_homunculus.txt mode change 100755 => 100644 npc/030-4/mana_battery.txt mode change 100755 => 100644 npc/030-4/mapflags.txt mode change 100755 => 100644 npc/031-1/angelaOutside.txt mode change 100755 => 100644 npc/031-1/dock.txt mode change 100755 => 100644 npc/031-1/frozenbeard.txt mode change 100755 => 100644 npc/031-1/house.txt mode change 100755 => 100644 npc/031-1/mapflags.txt mode change 100755 => 100644 npc/031-2/angelaHouse.txt mode change 100755 => 100644 npc/031-2/cindyHouse.txt mode change 100755 => 100644 npc/031-2/mapflags.txt mode change 100755 => 100644 npc/031-3/labyrinth.txt mode change 100755 => 100644 npc/031-3/mapflags.txt mode change 100755 => 100644 npc/031-4/barrier.txt mode change 100755 => 100644 npc/031-4/cindyCave.txt mode change 100755 => 100644 npc/031-4/mapflags.txt mode change 100755 => 100644 npc/032-3/mapflags.txt mode change 100755 => 100644 npc/033-1/backDoor.txt mode change 100755 => 100644 npc/033-1/barbarianinit.txt mode change 100755 => 100644 npc/033-1/birrod.txt mode change 100755 => 100644 npc/033-1/kimarr.txt mode change 100755 => 100644 npc/033-1/mapflags.txt mode change 100755 => 100644 npc/033-1/traveler.txt mode change 100755 => 100644 npc/033-1/yerrnk.txt mode change 100755 => 100644 npc/034-1/ambushs.txt mode change 100755 => 100644 npc/034-1/mapflags.txt mode change 100755 => 100644 npc/034-1/yetiSpawn.txt mode change 100755 => 100644 npc/034-2/mapflags.txt mode change 100755 => 100644 npc/035-2/casino.txt mode change 100755 => 100644 npc/035-2/emblems.txt mode change 100755 => 100644 npc/035-2/koga.txt mode change 100755 => 100644 npc/035-2/mapflags.txt mode change 100755 => 100644 npc/035-2/shops.txt mode change 100755 => 100644 npc/036-2/casino.txt mode change 100755 => 100644 npc/036-2/emblems.txt mode change 100755 => 100644 npc/036-2/koga-candor.txt mode change 100755 => 100644 npc/036-2/mapflags.txt mode change 100755 => 100644 npc/036-2/shops.txt mode change 100755 => 100644 npc/043-3/mapflags.txt mode change 100755 => 100644 npc/043-4/mapflags.txt mode change 100755 => 100644 npc/045-1/mapflags.txt mode change 100755 => 100644 npc/046-1/mapflags.txt mode change 100755 => 100644 npc/046-3/mapflags.txt mode change 100755 => 100644 npc/047-1/mapflags.txt mode change 100755 => 100644 npc/047-3/mapflags.txt mode change 100755 => 100644 npc/048-2/bluesageConfig.txt mode change 100755 => 100644 npc/048-2/helperAccused.txt mode change 100755 => 100644 npc/048-2/helperBookpages1.txt mode change 100755 => 100644 npc/048-2/helperBookpages2.txt mode change 100755 => 100644 npc/048-2/helperBookpages3.txt mode change 100755 => 100644 npc/048-2/helperChief.txt mode change 100755 => 100644 npc/048-2/helperCleaning1.txt mode change 100755 => 100644 npc/048-2/helperCleaning2.txt mode change 100755 => 100644 npc/048-2/helperCleaning3.txt mode change 100755 => 100644 npc/048-2/helperCleaning4.txt mode change 100755 => 100644 npc/048-2/helperCleaning5.txt mode change 100755 => 100644 npc/048-2/helperJanitor.txt mode change 100755 => 100644 npc/048-2/helperMInk.txt mode change 100755 => 100644 npc/048-2/helperMReed.txt mode change 100755 => 100644 npc/048-2/helperMSilk.txt mode change 100755 => 100644 npc/048-2/helperMYetiClaw.txt mode change 100755 => 100644 npc/048-2/helperResting1.txt mode change 100755 => 100644 npc/048-2/helperResting2.txt mode change 100755 => 100644 npc/048-2/mapflags.txt mode change 100755 => 100644 npc/048-2/sageNikolai.txt mode change 100755 => 100644 npc/048-2/slimes.txt mode change 100755 => 100644 npc/048-2/traveler.txt mode change 100755 => 100644 npc/048-2/visitors.txt mode change 100755 => 100644 npc/051-1/desert.txt mode change 100755 => 100644 npc/051-1/desertmonsters.txt mode change 100755 => 100644 npc/051-1/forest.txt mode change 100755 => 100644 npc/051-1/forestmonsters.txt mode change 100755 => 100644 npc/051-1/janitor.txt mode change 100755 => 100644 npc/051-1/mapflags.txt mode change 100755 => 100644 npc/051-3/ambush.txt mode change 100755 => 100644 npc/051-3/jailslimes.txt mode change 100755 => 100644 npc/051-3/janitor.txt mode change 100755 => 100644 npc/051-3/locks.txt mode change 100755 => 100644 npc/051-3/mapflags.txt mode change 100755 => 100644 npc/051-3/reinforcements.txt mode change 100755 => 100644 npc/052-1/channelling.txt mode change 100755 => 100644 npc/052-1/janitor.txt mode change 100755 => 100644 npc/052-1/mapflags.txt mode change 100755 => 100644 npc/052-2/chest.txt mode change 100755 => 100644 npc/052-2/janitor.txt mode change 100755 => 100644 npc/052-2/lobby.txt mode change 100755 => 100644 npc/052-2/mapflags.txt mode change 100755 => 100644 npc/052-2/partyroom.txt mode change 100755 => 100644 npc/052-2/storage.txt mode change 100755 => 100644 npc/055-1/flowerpentagram4.txt mode change 100755 => 100644 npc/055-1/mapflags.txt mode change 100755 => 100644 npc/055-1/pumpkins.txt mode change 100755 => 100644 npc/055-1/traveler.txt mode change 100755 => 100644 npc/055-3/mapflags.txt mode change 100755 => 100644 npc/056-2/barrier.txt mode change 100755 => 100644 npc/056-2/mapflags.txt mode change 100755 => 100644 npc/056-2/mirak.txt mode change 100755 => 100644 npc/056-2/notes.txt mode change 100755 => 100644 npc/057-1/mapflags.txt mode change 100755 => 100644 npc/_import.txt mode change 100755 => 100644 npc/annuals/check_time.txt mode change 100755 => 100644 npc/annuals/fathertime.txt mode change 100755 => 100644 npc/annuals/halloween/config.txt mode change 100755 => 100644 npc/annuals/halloween/debug.txt mode change 100755 => 100644 npc/annuals/halloween/munro.txt mode change 100755 => 100644 npc/annuals/halloween/trick_or_treat.txt mode change 100755 => 100644 npc/annuals/tree_beard.txt mode change 100755 => 100644 npc/annuals/xmas/barriers.txt mode change 100755 => 100644 npc/annuals/xmas/config.txt mode change 100755 => 100644 npc/annuals/xmas/core.txt mode change 100755 => 100644 npc/annuals/xmas/debug.txt mode change 100755 => 100644 npc/annuals/xmas/helpers.txt mode change 100755 => 100644 npc/annuals/xmas/list.txt mode change 100755 => 100644 npc/annuals/xmas/mobmanager.txt mode change 100755 => 100644 npc/annuals/xmas/reagents.txt mode change 100755 => 100644 npc/annuals/xmas/states.txt mode change 100755 => 100644 npc/botcheck/mapflags.txt mode change 100755 => 100644 npc/commands/debug.txt mode change 100755 => 100644 npc/commands/numa.txt mode change 100755 => 100644 npc/functions/DyeConfig.txt mode change 100755 => 100644 npc/functions/announcements.txt mode change 100755 => 100644 npc/functions/banker.txt mode change 100755 => 100644 npc/functions/barber.txt mode change 100755 => 100644 npc/functions/clear_vars.txt mode change 100755 => 100644 npc/functions/dailyquest.txt mode change 100755 => 100644 npc/functions/default_npc_checks.txt mode change 100755 => 100644 npc/functions/dynamic_menu.txt mode change 100755 => 100644 npc/functions/evil_obelisk.txt mode change 100755 => 100644 npc/functions/ferry.txt mode change 100755 => 100644 npc/functions/game_rules.txt mode change 100755 => 100644 npc/functions/global_event_handler.txt mode change 100755 => 100644 npc/functions/gm_island.txt mode change 100755 => 100644 npc/functions/headstyles.txt mode change 100755 => 100644 npc/functions/inn.txt mode change 100755 => 100644 npc/functions/jesusalvatr.txt mode change 100755 => 100644 npc/functions/lockpicking.txt mode change 100755 => 100644 npc/functions/magic.txt mode change 100755 => 100644 npc/functions/mob_points.txt mode change 100755 => 100644 npc/functions/motd.txt mode change 100755 => 100644 npc/functions/motdconfig.txt mode change 100755 => 100644 npc/functions/process_equip.txt mode change 100755 => 100644 npc/functions/quiz.txt mode change 100755 => 100644 npc/functions/slot_machine.txt mode change 100755 => 100644 npc/functions/soul_menhir.txt mode change 100755 => 100644 npc/functions/stat_reset.txt mode change 100755 => 100644 npc/functions/time.txt mode change 100755 => 100644 npc/functions/travelers.txt mode change 100755 => 100644 npc/functions/undead_debug.txt mode change 100755 => 100644 npc/functions/water_bottle.txt mode change 100755 => 100644 npc/items/check_wand.txt mode change 100755 => 100644 npc/items/launcher_ammo.txt mode change 100755 => 100644 npc/items/mirror.txt mode change 100755 => 100644 npc/items/pickled_beets.txt mode change 100755 => 100644 npc/items/purification_potion.txt mode change 100755 => 100644 npc/items/require_stat.txt mode change 100755 => 100644 npc/items/restricted_item.txt mode change 100755 => 100644 npc/items/rubber_bat.txt mode change 100755 => 100644 npc/items/scissors.txt mode change 100755 => 100644 npc/items/shock_sweet.txt mode change 100755 => 100644 npc/items/unequipcb.txt mode change 100755 => 100644 npc/items/unreleased_item.txt mode change 100755 => 100644 npc/items/warpTowels.txt mode change 100644 => 100755 npc/pre-re/scripts_main.conf (limited to 'npc/013-1/sagatha.txt') diff --git a/npc/001-1/adrian.txt b/npc/001-1/adrian.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/ched.txt b/npc/001-1/ched.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/children.txt b/npc/001-1/children.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/constable.txt b/npc/001-1/constable.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/dock.txt b/npc/001-1/dock.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/eomie.txt b/npc/001-1/eomie.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/ferry_master.txt b/npc/001-1/ferry_master.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/gate_guards.txt b/npc/001-1/gate_guards.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/gossip.txt b/npc/001-1/gossip.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/guards.txt b/npc/001-1/guards.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/inac.txt b/npc/001-1/inac.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/mapflags.txt b/npc/001-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/north_shops.txt b/npc/001-1/north_shops.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/npcs.txt b/npc/001-1/npcs.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/sewer_east.txt b/npc/001-1/sewer_east.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/sewer_north.txt b/npc/001-1/sewer_north.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/stat_reset.txt b/npc/001-1/stat_reset.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/tinris.txt b/npc/001-1/tinris.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/tombstones.txt b/npc/001-1/tombstones.txt old mode 100755 new mode 100644 diff --git a/npc/001-1/weellos.txt b/npc/001-1/weellos.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/bank.txt b/npc/001-2/bank.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/david.txt b/npc/001-2/david.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/fieri.txt b/npc/001-2/fieri.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/forge_shops.txt b/npc/001-2/forge_shops.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/government_building.txt b/npc/001-2/government_building.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/heathin.txt b/npc/001-2/heathin.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/jhedia.txt b/npc/001-2/jhedia.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/manakins.txt b/npc/001-2/manakins.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/mapflags.txt b/npc/001-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/pauline.txt b/npc/001-2/pauline.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/sandra.txt b/npc/001-2/sandra.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/tathin.txt b/npc/001-2/tathin.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/tondar.txt b/npc/001-2/tondar.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/wizards.txt b/npc/001-2/wizards.txt old mode 100755 new mode 100644 diff --git a/npc/001-2/yanis.txt b/npc/001-2/yanis.txt old mode 100755 new mode 100644 diff --git a/npc/001-3/guards.txt b/npc/001-3/guards.txt old mode 100755 new mode 100644 diff --git a/npc/001-3/mapflags.txt b/npc/001-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/001-3/pvpflag.txt b/npc/001-3/pvpflag.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/anwar.txt b/npc/002-1/anwar.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/bard.txt b/npc/002-1/bard.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/elanore.txt b/npc/002-1/elanore.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/gaurds.txt b/npc/002-1/gaurds.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/itka.txt b/npc/002-1/itka.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/lieutenant_dausen.txt b/npc/002-1/lieutenant_dausen.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/luca.txt b/npc/002-1/luca.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/mapflags.txt b/npc/002-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/mine_debug.txt b/npc/002-1/mine_debug.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/nickos.txt b/npc/002-1/nickos.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/nomads.txt b/npc/002-1/nomads.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/npcs.txt b/npc/002-1/npcs.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/sarah.txt b/npc/002-1/sarah.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/soul-menhir.txt b/npc/002-1/soul-menhir.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/stewen.txt b/npc/002-1/stewen.txt old mode 100755 new mode 100644 diff --git a/npc/002-1/traveler.txt b/npc/002-1/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/bakery.txt b/npc/002-2/bakery.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/barber.txt b/npc/002-2/barber.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/bleacher.txt b/npc/002-2/bleacher.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/casino.txt b/npc/002-2/casino.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/dedication.txt b/npc/002-2/dedication.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/hetchel.txt b/npc/002-2/hetchel.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/imec.txt b/npc/002-2/imec.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/inya.txt b/npc/002-2/inya.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/kps.txt b/npc/002-2/kps.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/kylian.txt b/npc/002-2/kylian.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/latoy.txt b/npc/002-2/latoy.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/mapflags.txt b/npc/002-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/omar.txt b/npc/002-2/omar.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/phaet.txt b/npc/002-2/phaet.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/rebecca.txt b/npc/002-2/rebecca.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/shops.txt b/npc/002-2/shops.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/stranger.txt b/npc/002-2/stranger.txt old mode 100755 new mode 100644 diff --git a/npc/002-2/troupe_leader.txt b/npc/002-2/troupe_leader.txt old mode 100755 new mode 100644 diff --git a/npc/002-3/mapflags.txt b/npc/002-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/002-3/merchant.txt b/npc/002-3/merchant.txt old mode 100755 new mode 100644 diff --git a/npc/002-3/mining_camp_barrier.txt b/npc/002-3/mining_camp_barrier.txt old mode 100755 new mode 100644 diff --git a/npc/002-3/nathan.txt b/npc/002-3/nathan.txt old mode 100755 new mode 100644 diff --git a/npc/002-3/traveler.txt b/npc/002-3/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/002-4/mapflags.txt b/npc/002-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/002-4/mine_triggerone.txt b/npc/002-4/mine_triggerone.txt old mode 100755 new mode 100644 diff --git a/npc/002-4/mine_triggerthree.txt b/npc/002-4/mine_triggerthree.txt old mode 100755 new mode 100644 diff --git a/npc/002-4/mine_triggertwo.txt b/npc/002-4/mine_triggertwo.txt old mode 100755 new mode 100644 diff --git a/npc/002-4/naem.txt b/npc/002-4/naem.txt old mode 100755 new mode 100644 diff --git a/npc/002-4/underground_palace_barrier.txt b/npc/002-4/underground_palace_barrier.txt old mode 100755 new mode 100644 diff --git a/npc/002-5/chest.txt b/npc/002-5/chest.txt old mode 100755 new mode 100644 diff --git a/npc/002-5/mapflags.txt b/npc/002-5/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/002-5/sema.txt b/npc/002-5/sema.txt old mode 100755 new mode 100644 diff --git a/npc/004-3/mapflags.txt b/npc/004-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/004-4/mapflags.txt b/npc/004-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/004-5/chest.txt b/npc/004-5/chest.txt old mode 100755 new mode 100644 diff --git a/npc/004-5/mapflags.txt b/npc/004-5/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/005-3/mapflags.txt b/npc/005-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/006-1/mapflags.txt b/npc/006-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/006-1/mika.txt b/npc/006-1/mika.txt old mode 100755 new mode 100644 diff --git a/npc/006-1/miriam.txt b/npc/006-1/miriam.txt old mode 100755 new mode 100644 diff --git a/npc/006-1/pachua.txt b/npc/006-1/pachua.txt old mode 100755 new mode 100644 diff --git a/npc/006-1/spirit.txt b/npc/006-1/spirit.txt old mode 100755 new mode 100644 diff --git a/npc/006-1/traveler.txt b/npc/006-1/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/006-1/tree.txt b/npc/006-1/tree.txt old mode 100755 new mode 100644 diff --git a/npc/006-2/mapflags.txt b/npc/006-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/006-2/npcs.txt b/npc/006-2/npcs.txt old mode 100755 new mode 100644 diff --git a/npc/006-2/shops.txt b/npc/006-2/shops.txt old mode 100755 new mode 100644 diff --git a/npc/006-3/mapflags.txt b/npc/006-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/007-1/mapflags.txt b/npc/007-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/007-1/voltain.txt b/npc/007-1/voltain.txt old mode 100755 new mode 100644 diff --git a/npc/007-2/witch.txt b/npc/007-2/witch.txt old mode 100755 new mode 100644 diff --git a/npc/008-1/andra.txt b/npc/008-1/andra.txt old mode 100755 new mode 100644 diff --git a/npc/008-1/annualeaster.txt b/npc/008-1/annualeaster.txt old mode 100755 new mode 100644 diff --git a/npc/008-1/banu.txt b/npc/008-1/banu.txt old mode 100755 new mode 100644 diff --git a/npc/008-1/diryn.txt b/npc/008-1/diryn.txt old mode 100755 new mode 100644 diff --git a/npc/008-1/dock.txt b/npc/008-1/dock.txt old mode 100755 new mode 100644 diff --git a/npc/008-1/george.txt b/npc/008-1/george.txt old mode 100755 new mode 100644 diff --git a/npc/008-1/hinnak.txt b/npc/008-1/hinnak.txt old mode 100755 new mode 100644 diff --git a/npc/008-1/mapflags.txt b/npc/008-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/008-1/mikhail.txt b/npc/008-1/mikhail.txt old mode 100755 new mode 100644 diff --git a/npc/009-1/constable.txt b/npc/009-1/constable.txt old mode 100755 new mode 100644 diff --git a/npc/009-1/guide.txt b/npc/009-1/guide.txt old mode 100755 new mode 100644 diff --git a/npc/009-1/jack.txt b/npc/009-1/jack.txt old mode 100755 new mode 100644 diff --git a/npc/009-1/mapflags.txt b/npc/009-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/009-1/milly.txt b/npc/009-1/milly.txt old mode 100755 new mode 100644 diff --git a/npc/009-1/old_man.txt b/npc/009-1/old_man.txt old mode 100755 new mode 100644 diff --git a/npc/009-1/old_woman.txt b/npc/009-1/old_woman.txt old mode 100755 new mode 100644 diff --git a/npc/009-1/sabine.txt b/npc/009-1/sabine.txt old mode 100755 new mode 100644 diff --git a/npc/009-1/soul-menhir.txt b/npc/009-1/soul-menhir.txt old mode 100755 new mode 100644 diff --git a/npc/009-1/water_pump.txt b/npc/009-1/water_pump.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/airlia.txt b/npc/009-2/airlia.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/alan.txt b/npc/009-2/alan.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/bernard.txt b/npc/009-2/bernard.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/doctor.txt b/npc/009-2/doctor.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/drunks.txt b/npc/009-2/drunks.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/entertainer.txt b/npc/009-2/entertainer.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/inspector.txt b/npc/009-2/inspector.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/kfahr.txt b/npc/009-2/kfahr.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/lena.txt b/npc/009-2/lena.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/mapflags.txt b/npc/009-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/misc.txt b/npc/009-2/misc.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/nicholas.txt b/npc/009-2/nicholas.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/nurse.txt b/npc/009-2/nurse.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/olana.txt b/npc/009-2/olana.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/peter.txt b/npc/009-2/peter.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/richard.txt b/npc/009-2/richard.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/selim.txt b/npc/009-2/selim.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/shops.txt b/npc/009-2/shops.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/trader.txt b/npc/009-2/trader.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/waitress.txt b/npc/009-2/waitress.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/wyara.txt b/npc/009-2/wyara.txt old mode 100755 new mode 100644 diff --git a/npc/009-2/yalina.txt b/npc/009-2/yalina.txt old mode 100755 new mode 100644 diff --git a/npc/009-3/mapflags.txt b/npc/009-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/009-3/sword.txt b/npc/009-3/sword.txt old mode 100755 new mode 100644 diff --git a/npc/009-3/warp.txt b/npc/009-3/warp.txt old mode 100755 new mode 100644 diff --git a/npc/009-4/barriers.txt b/npc/009-4/barriers.txt old mode 100755 new mode 100644 diff --git a/npc/009-4/mapflags.txt b/npc/009-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/009-4/orum.txt b/npc/009-4/orum.txt old mode 100755 new mode 100644 diff --git a/npc/009-4/orum_warps.txt b/npc/009-4/orum_warps.txt old mode 100755 new mode 100644 diff --git a/npc/009-4/torches.txt b/npc/009-4/torches.txt old mode 100755 new mode 100644 diff --git a/npc/009-4/waric.txt b/npc/009-4/waric.txt old mode 100755 new mode 100644 diff --git a/npc/009-5/mapflags.txt b/npc/009-5/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/009-6/brodomir.txt b/npc/009-6/brodomir.txt old mode 100755 new mode 100644 diff --git a/npc/009-6/mapflags.txt b/npc/009-6/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/009-7/battlemaster.txt b/npc/009-7/battlemaster.txt old mode 100755 new mode 100644 diff --git a/npc/009-7/core.txt b/npc/009-7/core.txt old mode 100755 new mode 100644 diff --git a/npc/009-7/debug.txt b/npc/009-7/debug.txt old mode 100755 new mode 100644 diff --git a/npc/009-7/eventHandler.txt b/npc/009-7/eventHandler.txt old mode 100755 new mode 100644 diff --git a/npc/009-7/mapflags.txt b/npc/009-7/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/009-7/rouge.txt b/npc/009-7/rouge.txt old mode 100755 new mode 100644 diff --git a/npc/009-7/shops.txt b/npc/009-7/shops.txt old mode 100755 new mode 100644 diff --git a/npc/009-7/trapdoor.txt b/npc/009-7/trapdoor.txt old mode 100755 new mode 100644 diff --git a/npc/009-8/celestia.txt b/npc/009-8/celestia.txt old mode 100755 new mode 100644 diff --git a/npc/009-8/mapflags.txt b/npc/009-8/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/010-1/mapflags.txt b/npc/010-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/010-2/band.txt b/npc/010-2/band.txt old mode 100755 new mode 100644 diff --git a/npc/010-2/chef.txt b/npc/010-2/chef.txt old mode 100755 new mode 100644 diff --git a/npc/010-2/dimonds.txt b/npc/010-2/dimonds.txt old mode 100755 new mode 100644 diff --git a/npc/010-2/doug.txt b/npc/010-2/doug.txt old mode 100755 new mode 100644 diff --git a/npc/010-2/loratay.txt b/npc/010-2/loratay.txt old mode 100755 new mode 100644 diff --git a/npc/010-2/mapflags.txt b/npc/010-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/010-2/workers.txt b/npc/010-2/workers.txt old mode 100755 new mode 100644 diff --git a/npc/011-1/alchemist.txt b/npc/011-1/alchemist.txt old mode 100755 new mode 100644 diff --git a/npc/011-1/auldsbel.txt b/npc/011-1/auldsbel.txt old mode 100755 new mode 100644 diff --git a/npc/011-1/mapflags.txt b/npc/011-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/011-1/oscar.txt b/npc/011-1/oscar.txt old mode 100755 new mode 100644 diff --git a/npc/011-1/shops.txt b/npc/011-1/shops.txt old mode 100755 new mode 100644 diff --git a/npc/011-3/hermit.txt b/npc/011-3/hermit.txt old mode 100755 new mode 100644 diff --git a/npc/011-3/mapflags.txt b/npc/011-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/011-4/bl_barrier.txt b/npc/011-4/bl_barrier.txt old mode 100755 new mode 100644 diff --git a/npc/011-4/mapflags.txt b/npc/011-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/011-6/barrier.txt b/npc/011-6/barrier.txt old mode 100755 new mode 100644 diff --git a/npc/011-6/bryant.txt b/npc/011-6/bryant.txt old mode 100755 new mode 100644 diff --git a/npc/011-6/crastur.txt b/npc/011-6/crastur.txt old mode 100755 new mode 100644 diff --git a/npc/011-6/mapflags.txt b/npc/011-6/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/012-1/amrak.txt b/npc/012-1/amrak.txt old mode 100755 new mode 100644 diff --git a/npc/012-1/flowerpentagram2.txt b/npc/012-1/flowerpentagram2.txt old mode 100755 new mode 100644 diff --git a/npc/012-1/injured-mouboo.txt b/npc/012-1/injured-mouboo.txt old mode 100755 new mode 100644 diff --git a/npc/012-1/mapflags.txt b/npc/012-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/012-1/shops.txt b/npc/012-1/shops.txt old mode 100755 new mode 100644 diff --git a/npc/012-3/mana-seed.txt b/npc/012-3/mana-seed.txt old mode 100755 new mode 100644 diff --git a/npc/012-3/mapflags.txt b/npc/012-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/012-3/traveler.txt b/npc/012-3/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/012-3/warningsigns.txt b/npc/012-3/warningsigns.txt old mode 100755 new mode 100644 diff --git a/npc/012-4/mapflags.txt b/npc/012-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/012-4/pvpflag.txt b/npc/012-4/pvpflag.txt old mode 100755 new mode 100644 diff --git a/npc/013-1/flowerpentagram.txt b/npc/013-1/flowerpentagram.txt old mode 100755 new mode 100644 diff --git a/npc/013-1/mapflags.txt b/npc/013-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt old mode 100755 new mode 100644 diff --git a/npc/013-1/traveler.txt b/npc/013-1/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/013-2/apprentice.txt b/npc/013-2/apprentice.txt old mode 100755 new mode 100644 diff --git a/npc/013-2/mapflags.txt b/npc/013-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/013-2/notes.txt b/npc/013-2/notes.txt old mode 100755 new mode 100644 diff --git a/npc/013-2/wizard.txt b/npc/013-2/wizard.txt old mode 100755 new mode 100644 diff --git a/npc/013-3/barrier.txt b/npc/013-3/barrier.txt old mode 100755 new mode 100644 diff --git a/npc/013-3/mapflags.txt b/npc/013-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/013-3/mask_chest.txt b/npc/013-3/mask_chest.txt old mode 100755 new mode 100644 diff --git a/npc/013-3/misc.txt b/npc/013-3/misc.txt old mode 100755 new mode 100644 diff --git a/npc/013-3/sword_chest.txt b/npc/013-3/sword_chest.txt old mode 100755 new mode 100644 diff --git a/npc/014-1/mapflags.txt b/npc/014-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/014-1/wedding-officiator.txt b/npc/014-1/wedding-officiator.txt old mode 100755 new mode 100644 diff --git a/npc/014-3/mapflags.txt b/npc/014-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/015-1/alice.txt b/npc/015-1/alice.txt old mode 100755 new mode 100644 diff --git a/npc/015-1/barrier.txt b/npc/015-1/barrier.txt old mode 100755 new mode 100644 diff --git a/npc/015-1/mapflags.txt b/npc/015-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/015-1/sword.txt b/npc/015-1/sword.txt old mode 100755 new mode 100644 diff --git a/npc/015-3/barrier.txt b/npc/015-3/barrier.txt old mode 100755 new mode 100644 diff --git a/npc/015-3/katze.txt b/npc/015-3/katze.txt old mode 100755 new mode 100644 diff --git a/npc/015-3/mapflags.txt b/npc/015-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/015-3/pot.txt b/npc/015-3/pot.txt old mode 100755 new mode 100644 diff --git a/npc/016-1/gwendolyn.txt b/npc/016-1/gwendolyn.txt old mode 100755 new mode 100644 diff --git a/npc/016-1/mapflags.txt b/npc/016-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/016-1/rossy.txt b/npc/016-1/rossy.txt old mode 100755 new mode 100644 diff --git a/npc/017-1/flowerpentagram1.txt b/npc/017-1/flowerpentagram1.txt old mode 100755 new mode 100644 diff --git a/npc/017-1/flowerpentagram5.txt b/npc/017-1/flowerpentagram5.txt old mode 100755 new mode 100644 diff --git a/npc/017-1/mapflags.txt b/npc/017-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/017-2/mapflags.txt b/npc/017-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/017-3/mapflags.txt b/npc/017-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/017-4/guardingspirit.txt b/npc/017-4/guardingspirit.txt old mode 100755 new mode 100644 diff --git a/npc/017-4/mapflags.txt b/npc/017-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/017-4/orum.txt b/npc/017-4/orum.txt old mode 100755 new mode 100644 diff --git a/npc/017-4/waric.txt b/npc/017-4/waric.txt old mode 100755 new mode 100644 diff --git a/npc/017-9/mapflags.txt b/npc/017-9/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/017-9/npcs.txt b/npc/017-9/npcs.txt old mode 100755 new mode 100644 diff --git a/npc/018-1/flowerpentagram3.txt b/npc/018-1/flowerpentagram3.txt old mode 100755 new mode 100644 diff --git a/npc/018-1/mapflags.txt b/npc/018-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/018-1/mike.txt b/npc/018-1/mike.txt old mode 100755 new mode 100644 diff --git a/npc/018-1/miners.txt b/npc/018-1/miners.txt old mode 100755 new mode 100644 diff --git a/npc/018-1/sword.txt b/npc/018-1/sword.txt old mode 100755 new mode 100644 diff --git a/npc/018-2/angus.txt b/npc/018-2/angus.txt old mode 100755 new mode 100644 diff --git a/npc/018-2/books.txt b/npc/018-2/books.txt old mode 100755 new mode 100644 diff --git a/npc/018-2/caul.txt b/npc/018-2/caul.txt old mode 100755 new mode 100644 diff --git a/npc/018-2/mapflags.txt b/npc/018-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/018-2/miners.txt b/npc/018-2/miners.txt old mode 100755 new mode 100644 diff --git a/npc/018-2/receptionist.txt b/npc/018-2/receptionist.txt old mode 100755 new mode 100644 diff --git a/npc/018-3/bookcase.txt b/npc/018-3/bookcase.txt old mode 100755 new mode 100644 diff --git a/npc/018-3/evil-obelisk.txt b/npc/018-3/evil-obelisk.txt old mode 100755 new mode 100644 diff --git a/npc/018-3/mapflags.txt b/npc/018-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/018-3/sword.txt b/npc/018-3/sword.txt old mode 100755 new mode 100644 diff --git a/npc/019-1/mapflags.txt b/npc/019-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/019-1/santa_helper.txt b/npc/019-1/santa_helper.txt old mode 100755 new mode 100644 diff --git a/npc/019-1/snowman.txt b/npc/019-1/snowman.txt old mode 100755 new mode 100644 diff --git a/npc/019-3/mapflags.txt b/npc/019-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/019-4/mapflags.txt b/npc/019-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/020-1/KrickKrackKrock.txt b/npc/020-1/KrickKrackKrock.txt old mode 100755 new mode 100644 diff --git a/npc/020-1/mapflags.txt b/npc/020-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/020-1/rockscissor.txt b/npc/020-1/rockscissor.txt old mode 100755 new mode 100644 diff --git a/npc/020-1/soul-menhir.txt b/npc/020-1/soul-menhir.txt old mode 100755 new mode 100644 diff --git a/npc/020-1/traveler.txt b/npc/020-1/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/020-1/well.txt b/npc/020-1/well.txt old mode 100755 new mode 100644 diff --git a/npc/020-2/baktar.txt b/npc/020-2/baktar.txt old mode 100755 new mode 100644 diff --git a/npc/020-2/banker.txt b/npc/020-2/banker.txt old mode 100755 new mode 100644 diff --git a/npc/020-2/furquest.txt b/npc/020-2/furquest.txt old mode 100755 new mode 100644 diff --git a/npc/020-2/mapflags.txt b/npc/020-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/020-2/shops.txt b/npc/020-2/shops.txt old mode 100755 new mode 100644 diff --git a/npc/020-3/mapflags.txt b/npc/020-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/021-3/mapflags.txt b/npc/021-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/025-1/barrier.txt b/npc/025-1/barrier.txt old mode 100755 new mode 100644 diff --git a/npc/025-1/mapflags.txt b/npc/025-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/025-1/reset.txt b/npc/025-1/reset.txt old mode 100755 new mode 100644 diff --git a/npc/025-3/barriers.txt b/npc/025-3/barriers.txt old mode 100755 new mode 100644 diff --git a/npc/025-3/mapflags.txt b/npc/025-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/025-4/battlecaves.txt b/npc/025-4/battlecaves.txt old mode 100755 new mode 100644 diff --git a/npc/025-4/clauquer.txt b/npc/025-4/clauquer.txt old mode 100755 new mode 100644 diff --git a/npc/025-4/julia.txt b/npc/025-4/julia.txt old mode 100755 new mode 100644 diff --git a/npc/025-4/mapflags.txt b/npc/025-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/026-1/evil_guard.txt b/npc/026-1/evil_guard.txt old mode 100755 new mode 100644 diff --git a/npc/026-1/headless_man.txt b/npc/026-1/headless_man.txt old mode 100755 new mode 100644 diff --git a/npc/026-1/husband.txt b/npc/026-1/husband.txt old mode 100755 new mode 100644 diff --git a/npc/026-1/mapflags.txt b/npc/026-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/026-1/sign.txt b/npc/026-1/sign.txt old mode 100755 new mode 100644 diff --git a/npc/026-1/soul-menhir.txt b/npc/026-1/soul-menhir.txt old mode 100755 new mode 100644 diff --git a/npc/026-1/traveler.txt b/npc/026-1/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/barman.txt b/npc/026-2/barman.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/cerhan.txt b/npc/026-2/cerhan.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/crying_child.txt b/npc/026-2/crying_child.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/diary.txt b/npc/026-2/diary.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/door.txt b/npc/026-2/door.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/eurni.txt b/npc/026-2/eurni.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/golbenez.txt b/npc/026-2/golbenez.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/gy_inn_shops.txt b/npc/026-2/gy_inn_shops.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/innkeeper.txt b/npc/026-2/innkeeper.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/lover.txt b/npc/026-2/lover.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/mapflags.txt b/npc/026-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/testnpcs.txt b/npc/026-2/testnpcs.txt old mode 100755 new mode 100644 diff --git a/npc/026-2/werewolf.txt b/npc/026-2/werewolf.txt old mode 100755 new mode 100644 diff --git a/npc/027-1/crypt.txt b/npc/027-1/crypt.txt old mode 100755 new mode 100644 diff --git a/npc/027-1/graves.txt b/npc/027-1/graves.txt old mode 100755 new mode 100644 diff --git a/npc/027-1/mapflags.txt b/npc/027-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/027-2/alacrius.txt b/npc/027-2/alacrius.txt old mode 100755 new mode 100644 diff --git a/npc/027-2/caretaker.txt b/npc/027-2/caretaker.txt old mode 100755 new mode 100644 diff --git a/npc/027-2/mapflags.txt b/npc/027-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/027-2/thurston.txt b/npc/027-2/thurston.txt old mode 100755 new mode 100644 diff --git a/npc/027-3/casket_traps.txt b/npc/027-3/casket_traps.txt old mode 100755 new mode 100644 diff --git a/npc/027-3/general_krukan_door.txt b/npc/027-3/general_krukan_door.txt old mode 100755 new mode 100644 diff --git a/npc/027-3/mapflags.txt b/npc/027-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/027-3/monsters.txt b/npc/027-3/monsters.txt old mode 100755 new mode 100644 diff --git a/npc/027-4/casket_traps.txt b/npc/027-4/casket_traps.txt old mode 100755 new mode 100644 diff --git a/npc/027-4/general_razha_door.txt b/npc/027-4/general_razha_door.txt old mode 100755 new mode 100644 diff --git a/npc/027-4/mapflags.txt b/npc/027-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/027-4/monsters.txt b/npc/027-4/monsters.txt old mode 100755 new mode 100644 diff --git a/npc/027-5/casket_traps.txt b/npc/027-5/casket_traps.txt old mode 100755 new mode 100644 diff --git a/npc/027-5/general_terogan_door.txt b/npc/027-5/general_terogan_door.txt old mode 100755 new mode 100644 diff --git a/npc/027-5/mapflags.txt b/npc/027-5/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/027-6/casket_traps.txt b/npc/027-6/casket_traps.txt old mode 100755 new mode 100644 diff --git a/npc/027-6/general_krukan.txt b/npc/027-6/general_krukan.txt old mode 100755 new mode 100644 diff --git a/npc/027-6/general_krukan_exitdoor.txt b/npc/027-6/general_krukan_exitdoor.txt old mode 100755 new mode 100644 diff --git a/npc/027-6/mapflags.txt b/npc/027-6/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/027-7/general_razha.txt b/npc/027-7/general_razha.txt old mode 100755 new mode 100644 diff --git a/npc/027-7/general_razha_exitdoor.txt b/npc/027-7/general_razha_exitdoor.txt old mode 100755 new mode 100644 diff --git a/npc/027-7/mapflags.txt b/npc/027-7/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/027-8/general_terogan.txt b/npc/027-8/general_terogan.txt old mode 100755 new mode 100644 diff --git a/npc/027-8/general_terogan_exitdoor.txt b/npc/027-8/general_terogan_exitdoor.txt old mode 100755 new mode 100644 diff --git a/npc/027-8/mapflags.txt b/npc/027-8/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/028-1/mapflags.txt b/npc/028-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/028-1/portal.txt b/npc/028-1/portal.txt old mode 100755 new mode 100644 diff --git a/npc/028-3/mapflags.txt b/npc/028-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/aahna.txt b/npc/029-1/aahna.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/barrier.txt b/npc/029-1/barrier.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/dock.txt b/npc/029-1/dock.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/ferry_master.txt b/npc/029-1/ferry_master.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/hasan.txt b/npc/029-1/hasan.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/hideandseek.txt b/npc/029-1/hideandseek.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/kaan.txt b/npc/029-1/kaan.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/liana.txt b/npc/029-1/liana.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/mapflags.txt b/npc/029-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/monster_guide.txt b/npc/029-1/monster_guide.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/rewards_master.txt b/npc/029-1/rewards_master.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/soul-menhir.txt b/npc/029-1/soul-menhir.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/traveler.txt b/npc/029-1/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/tutorial.txt b/npc/029-1/tutorial.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/valon.txt b/npc/029-1/valon.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/vincent.txt b/npc/029-1/vincent.txt old mode 100755 new mode 100644 diff --git a/npc/029-1/zegas.txt b/npc/029-1/zegas.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/bankroom.txt b/npc/029-2/bankroom.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/barrels.txt b/npc/029-2/barrels.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/barrels_config.txt b/npc/029-2/barrels_config.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/cynric.txt b/npc/029-2/cynric.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/mapflags.txt b/npc/029-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/morgan.txt b/npc/029-2/morgan.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/nyle.txt b/npc/029-2/nyle.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/sorfina.txt b/npc/029-2/sorfina.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/stat_reset.txt b/npc/029-2/stat_reset.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/tanisha.txt b/npc/029-2/tanisha.txt old mode 100755 new mode 100644 diff --git a/npc/029-2/two_arms.txt b/npc/029-2/two_arms.txt old mode 100755 new mode 100644 diff --git a/npc/029-3/barrier.txt b/npc/029-3/barrier.txt old mode 100755 new mode 100644 diff --git a/npc/029-3/mapflags.txt b/npc/029-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/029-3/parua.txt b/npc/029-3/parua.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/avalia.txt b/npc/030-2/avalia.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/basic_npcs.txt b/npc/030-2/basic_npcs.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/bedding_helper.txt b/npc/030-2/bedding_helper.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/chief_helper.txt b/npc/030-2/chief_helper.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/eljas.txt b/npc/030-2/eljas.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/empty_boxes_helper.txt b/npc/030-2/empty_boxes_helper.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/glitter_helper.txt b/npc/030-2/glitter_helper.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/guards.txt b/npc/030-2/guards.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/mapflags.txt b/npc/030-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/present_helper.txt b/npc/030-2/present_helper.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/roasted_acorns_helper.txt b/npc/030-2/roasted_acorns_helper.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/shipping_helper.txt b/npc/030-2/shipping_helper.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/storage_helper.txt b/npc/030-2/storage_helper.txt old mode 100755 new mode 100644 diff --git a/npc/030-2/wrapping_paper_helper.txt b/npc/030-2/wrapping_paper_helper.txt old mode 100755 new mode 100644 diff --git a/npc/030-3/mapflags.txt b/npc/030-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/030-3/orum_homunculus.txt b/npc/030-3/orum_homunculus.txt old mode 100755 new mode 100644 diff --git a/npc/030-4/mana_battery.txt b/npc/030-4/mana_battery.txt old mode 100755 new mode 100644 diff --git a/npc/030-4/mapflags.txt b/npc/030-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/031-1/angelaOutside.txt b/npc/031-1/angelaOutside.txt old mode 100755 new mode 100644 diff --git a/npc/031-1/dock.txt b/npc/031-1/dock.txt old mode 100755 new mode 100644 diff --git a/npc/031-1/frozenbeard.txt b/npc/031-1/frozenbeard.txt old mode 100755 new mode 100644 diff --git a/npc/031-1/house.txt b/npc/031-1/house.txt old mode 100755 new mode 100644 diff --git a/npc/031-1/mapflags.txt b/npc/031-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/031-2/angelaHouse.txt b/npc/031-2/angelaHouse.txt old mode 100755 new mode 100644 diff --git a/npc/031-2/cindyHouse.txt b/npc/031-2/cindyHouse.txt old mode 100755 new mode 100644 diff --git a/npc/031-2/mapflags.txt b/npc/031-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/031-3/labyrinth.txt b/npc/031-3/labyrinth.txt old mode 100755 new mode 100644 diff --git a/npc/031-3/mapflags.txt b/npc/031-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/031-4/barrier.txt b/npc/031-4/barrier.txt old mode 100755 new mode 100644 diff --git a/npc/031-4/cindyCave.txt b/npc/031-4/cindyCave.txt old mode 100755 new mode 100644 diff --git a/npc/031-4/mapflags.txt b/npc/031-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/032-3/mapflags.txt b/npc/032-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/033-1/backDoor.txt b/npc/033-1/backDoor.txt old mode 100755 new mode 100644 diff --git a/npc/033-1/barbarianinit.txt b/npc/033-1/barbarianinit.txt old mode 100755 new mode 100644 diff --git a/npc/033-1/birrod.txt b/npc/033-1/birrod.txt old mode 100755 new mode 100644 diff --git a/npc/033-1/kimarr.txt b/npc/033-1/kimarr.txt old mode 100755 new mode 100644 diff --git a/npc/033-1/mapflags.txt b/npc/033-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/033-1/traveler.txt b/npc/033-1/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/033-1/yerrnk.txt b/npc/033-1/yerrnk.txt old mode 100755 new mode 100644 diff --git a/npc/034-1/ambushs.txt b/npc/034-1/ambushs.txt old mode 100755 new mode 100644 diff --git a/npc/034-1/mapflags.txt b/npc/034-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/034-1/yetiSpawn.txt b/npc/034-1/yetiSpawn.txt old mode 100755 new mode 100644 diff --git a/npc/034-2/mapflags.txt b/npc/034-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/035-2/casino.txt b/npc/035-2/casino.txt old mode 100755 new mode 100644 diff --git a/npc/035-2/emblems.txt b/npc/035-2/emblems.txt old mode 100755 new mode 100644 diff --git a/npc/035-2/koga.txt b/npc/035-2/koga.txt old mode 100755 new mode 100644 diff --git a/npc/035-2/mapflags.txt b/npc/035-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/035-2/shops.txt b/npc/035-2/shops.txt old mode 100755 new mode 100644 diff --git a/npc/036-2/casino.txt b/npc/036-2/casino.txt old mode 100755 new mode 100644 diff --git a/npc/036-2/emblems.txt b/npc/036-2/emblems.txt old mode 100755 new mode 100644 diff --git a/npc/036-2/koga-candor.txt b/npc/036-2/koga-candor.txt old mode 100755 new mode 100644 diff --git a/npc/036-2/mapflags.txt b/npc/036-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/036-2/shops.txt b/npc/036-2/shops.txt old mode 100755 new mode 100644 diff --git a/npc/043-3/mapflags.txt b/npc/043-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/043-4/mapflags.txt b/npc/043-4/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/045-1/mapflags.txt b/npc/045-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/046-1/mapflags.txt b/npc/046-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/046-3/mapflags.txt b/npc/046-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/047-1/mapflags.txt b/npc/047-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/047-3/mapflags.txt b/npc/047-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/bluesageConfig.txt b/npc/048-2/bluesageConfig.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperAccused.txt b/npc/048-2/helperAccused.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperBookpages1.txt b/npc/048-2/helperBookpages1.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperBookpages2.txt b/npc/048-2/helperBookpages2.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperBookpages3.txt b/npc/048-2/helperBookpages3.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperChief.txt b/npc/048-2/helperChief.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperCleaning1.txt b/npc/048-2/helperCleaning1.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperCleaning2.txt b/npc/048-2/helperCleaning2.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperCleaning3.txt b/npc/048-2/helperCleaning3.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperCleaning4.txt b/npc/048-2/helperCleaning4.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperCleaning5.txt b/npc/048-2/helperCleaning5.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperJanitor.txt b/npc/048-2/helperJanitor.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperMInk.txt b/npc/048-2/helperMInk.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperMReed.txt b/npc/048-2/helperMReed.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperMSilk.txt b/npc/048-2/helperMSilk.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperMYetiClaw.txt b/npc/048-2/helperMYetiClaw.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperResting1.txt b/npc/048-2/helperResting1.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/helperResting2.txt b/npc/048-2/helperResting2.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/mapflags.txt b/npc/048-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/sageNikolai.txt b/npc/048-2/sageNikolai.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/slimes.txt b/npc/048-2/slimes.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/traveler.txt b/npc/048-2/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/048-2/visitors.txt b/npc/048-2/visitors.txt old mode 100755 new mode 100644 diff --git a/npc/051-1/desert.txt b/npc/051-1/desert.txt old mode 100755 new mode 100644 diff --git a/npc/051-1/desertmonsters.txt b/npc/051-1/desertmonsters.txt old mode 100755 new mode 100644 diff --git a/npc/051-1/forest.txt b/npc/051-1/forest.txt old mode 100755 new mode 100644 diff --git a/npc/051-1/forestmonsters.txt b/npc/051-1/forestmonsters.txt old mode 100755 new mode 100644 diff --git a/npc/051-1/janitor.txt b/npc/051-1/janitor.txt old mode 100755 new mode 100644 diff --git a/npc/051-1/mapflags.txt b/npc/051-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/051-3/ambush.txt b/npc/051-3/ambush.txt old mode 100755 new mode 100644 diff --git a/npc/051-3/jailslimes.txt b/npc/051-3/jailslimes.txt old mode 100755 new mode 100644 diff --git a/npc/051-3/janitor.txt b/npc/051-3/janitor.txt old mode 100755 new mode 100644 diff --git a/npc/051-3/locks.txt b/npc/051-3/locks.txt old mode 100755 new mode 100644 diff --git a/npc/051-3/mapflags.txt b/npc/051-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/051-3/reinforcements.txt b/npc/051-3/reinforcements.txt old mode 100755 new mode 100644 diff --git a/npc/052-1/channelling.txt b/npc/052-1/channelling.txt old mode 100755 new mode 100644 diff --git a/npc/052-1/janitor.txt b/npc/052-1/janitor.txt old mode 100755 new mode 100644 diff --git a/npc/052-1/mapflags.txt b/npc/052-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/052-2/chest.txt b/npc/052-2/chest.txt old mode 100755 new mode 100644 diff --git a/npc/052-2/janitor.txt b/npc/052-2/janitor.txt old mode 100755 new mode 100644 diff --git a/npc/052-2/lobby.txt b/npc/052-2/lobby.txt old mode 100755 new mode 100644 diff --git a/npc/052-2/mapflags.txt b/npc/052-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/052-2/partyroom.txt b/npc/052-2/partyroom.txt old mode 100755 new mode 100644 diff --git a/npc/052-2/storage.txt b/npc/052-2/storage.txt old mode 100755 new mode 100644 diff --git a/npc/055-1/flowerpentagram4.txt b/npc/055-1/flowerpentagram4.txt old mode 100755 new mode 100644 diff --git a/npc/055-1/mapflags.txt b/npc/055-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/055-1/pumpkins.txt b/npc/055-1/pumpkins.txt old mode 100755 new mode 100644 diff --git a/npc/055-1/traveler.txt b/npc/055-1/traveler.txt old mode 100755 new mode 100644 diff --git a/npc/055-3/mapflags.txt b/npc/055-3/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/056-2/barrier.txt b/npc/056-2/barrier.txt old mode 100755 new mode 100644 diff --git a/npc/056-2/mapflags.txt b/npc/056-2/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/056-2/mirak.txt b/npc/056-2/mirak.txt old mode 100755 new mode 100644 diff --git a/npc/056-2/notes.txt b/npc/056-2/notes.txt old mode 100755 new mode 100644 diff --git a/npc/057-1/mapflags.txt b/npc/057-1/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/_import.txt b/npc/_import.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/check_time.txt b/npc/annuals/check_time.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/fathertime.txt b/npc/annuals/fathertime.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/halloween/config.txt b/npc/annuals/halloween/config.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/halloween/debug.txt b/npc/annuals/halloween/debug.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/halloween/munro.txt b/npc/annuals/halloween/munro.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/halloween/trick_or_treat.txt b/npc/annuals/halloween/trick_or_treat.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/tree_beard.txt b/npc/annuals/tree_beard.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/xmas/barriers.txt b/npc/annuals/xmas/barriers.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/xmas/config.txt b/npc/annuals/xmas/config.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/xmas/core.txt b/npc/annuals/xmas/core.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/xmas/debug.txt b/npc/annuals/xmas/debug.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/xmas/helpers.txt b/npc/annuals/xmas/helpers.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/xmas/list.txt b/npc/annuals/xmas/list.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/xmas/mobmanager.txt b/npc/annuals/xmas/mobmanager.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/xmas/reagents.txt b/npc/annuals/xmas/reagents.txt old mode 100755 new mode 100644 diff --git a/npc/annuals/xmas/states.txt b/npc/annuals/xmas/states.txt old mode 100755 new mode 100644 diff --git a/npc/botcheck/mapflags.txt b/npc/botcheck/mapflags.txt old mode 100755 new mode 100644 diff --git a/npc/commands/debug.txt b/npc/commands/debug.txt old mode 100755 new mode 100644 diff --git a/npc/commands/numa.txt b/npc/commands/numa.txt old mode 100755 new mode 100644 diff --git a/npc/functions/DyeConfig.txt b/npc/functions/DyeConfig.txt old mode 100755 new mode 100644 diff --git a/npc/functions/announcements.txt b/npc/functions/announcements.txt old mode 100755 new mode 100644 diff --git a/npc/functions/banker.txt b/npc/functions/banker.txt old mode 100755 new mode 100644 diff --git a/npc/functions/barber.txt b/npc/functions/barber.txt old mode 100755 new mode 100644 diff --git a/npc/functions/clear_vars.txt b/npc/functions/clear_vars.txt old mode 100755 new mode 100644 diff --git a/npc/functions/dailyquest.txt b/npc/functions/dailyquest.txt old mode 100755 new mode 100644 diff --git a/npc/functions/default_npc_checks.txt b/npc/functions/default_npc_checks.txt old mode 100755 new mode 100644 diff --git a/npc/functions/dynamic_menu.txt b/npc/functions/dynamic_menu.txt old mode 100755 new mode 100644 diff --git a/npc/functions/evil_obelisk.txt b/npc/functions/evil_obelisk.txt old mode 100755 new mode 100644 diff --git a/npc/functions/ferry.txt b/npc/functions/ferry.txt old mode 100755 new mode 100644 diff --git a/npc/functions/game_rules.txt b/npc/functions/game_rules.txt old mode 100755 new mode 100644 diff --git a/npc/functions/global_event_handler.txt b/npc/functions/global_event_handler.txt old mode 100755 new mode 100644 diff --git a/npc/functions/gm_island.txt b/npc/functions/gm_island.txt old mode 100755 new mode 100644 diff --git a/npc/functions/headstyles.txt b/npc/functions/headstyles.txt old mode 100755 new mode 100644 diff --git a/npc/functions/inn.txt b/npc/functions/inn.txt old mode 100755 new mode 100644 diff --git a/npc/functions/jesusalvatr.txt b/npc/functions/jesusalvatr.txt old mode 100755 new mode 100644 diff --git a/npc/functions/lockpicking.txt b/npc/functions/lockpicking.txt old mode 100755 new mode 100644 diff --git a/npc/functions/magic.txt b/npc/functions/magic.txt old mode 100755 new mode 100644 diff --git a/npc/functions/mob_points.txt b/npc/functions/mob_points.txt old mode 100755 new mode 100644 diff --git a/npc/functions/motd.txt b/npc/functions/motd.txt old mode 100755 new mode 100644 diff --git a/npc/functions/motdconfig.txt b/npc/functions/motdconfig.txt old mode 100755 new mode 100644 diff --git a/npc/functions/process_equip.txt b/npc/functions/process_equip.txt old mode 100755 new mode 100644 diff --git a/npc/functions/quiz.txt b/npc/functions/quiz.txt old mode 100755 new mode 100644 diff --git a/npc/functions/slot_machine.txt b/npc/functions/slot_machine.txt old mode 100755 new mode 100644 diff --git a/npc/functions/soul_menhir.txt b/npc/functions/soul_menhir.txt old mode 100755 new mode 100644 diff --git a/npc/functions/stat_reset.txt b/npc/functions/stat_reset.txt old mode 100755 new mode 100644 diff --git a/npc/functions/time.txt b/npc/functions/time.txt old mode 100755 new mode 100644 diff --git a/npc/functions/travelers.txt b/npc/functions/travelers.txt old mode 100755 new mode 100644 diff --git a/npc/functions/undead_debug.txt b/npc/functions/undead_debug.txt old mode 100755 new mode 100644 diff --git a/npc/functions/water_bottle.txt b/npc/functions/water_bottle.txt old mode 100755 new mode 100644 diff --git a/npc/items/check_wand.txt b/npc/items/check_wand.txt old mode 100755 new mode 100644 diff --git a/npc/items/launcher_ammo.txt b/npc/items/launcher_ammo.txt old mode 100755 new mode 100644 diff --git a/npc/items/mirror.txt b/npc/items/mirror.txt old mode 100755 new mode 100644 diff --git a/npc/items/pickled_beets.txt b/npc/items/pickled_beets.txt old mode 100755 new mode 100644 diff --git a/npc/items/purification_potion.txt b/npc/items/purification_potion.txt old mode 100755 new mode 100644 diff --git a/npc/items/require_stat.txt b/npc/items/require_stat.txt old mode 100755 new mode 100644 diff --git a/npc/items/restricted_item.txt b/npc/items/restricted_item.txt old mode 100755 new mode 100644 diff --git a/npc/items/rubber_bat.txt b/npc/items/rubber_bat.txt old mode 100755 new mode 100644 diff --git a/npc/items/scissors.txt b/npc/items/scissors.txt old mode 100755 new mode 100644 diff --git a/npc/items/shock_sweet.txt b/npc/items/shock_sweet.txt old mode 100755 new mode 100644 diff --git a/npc/items/unequipcb.txt b/npc/items/unequipcb.txt old mode 100755 new mode 100644 diff --git a/npc/items/unreleased_item.txt b/npc/items/unreleased_item.txt old mode 100755 new mode 100644 diff --git a/npc/items/warpTowels.txt b/npc/items/warpTowels.txt old mode 100755 new mode 100644 diff --git a/npc/pre-re/scripts_main.conf b/npc/pre-re/scripts_main.conf old mode 100644 new mode 100755 -- cgit v1.2.3-70-g09d2 From a5d05be433a2bc765fb34f01f3e459c95c19718a Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sun, 11 Apr 2021 13:13:48 -0300 Subject: Betsanc can now be obtained --- db/pre-re/skill_db.conf | 2 +- npc/013-1/sagatha.txt | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'npc/013-1/sagatha.txt') diff --git a/db/pre-re/skill_db.conf b/db/pre-re/skill_db.conf index aeca42bf..625e9e9d 100644 --- a/db/pre-re/skill_db.conf +++ b/db/pre-re/skill_db.conf @@ -38571,6 +38571,6 @@ skill_db: ( } }, // TODO: Bind magic scripts -// Wand Aggravate(OK) Abizit FlareDart Alizarin Cobalt Gamboge Mauve Lum MagicBlade Sulphur Kalmurk Parum ArrowHail Barrier(OK) EnchantLifestone FlyingBackpack(?) Joyplim Hide(?) LayOnHands Ingrav Knuclkes MakeArrow MakeIronPowder MakeShirt MakeTanktop MakeSTanktop Protect Rain Shear SFluffy SMouboo SPinkie SSnake SSPiky SWicked ToxicDart Necro +// Wand Abizit FlareDart Alizarin Cobalt Gamboge Mauve Lum MagicBlade Sulphur Kalmurk Parum ArrowHail Barrier(OK) EnchantLifestone FlyingBackpack(?) Joyplim Hide(?) LayOnHands Ingrav Knuclkes MakeArrow MakeIronPowder MakeShirt MakeTanktop MakeSTanktop Protect Rain Shear SFluffy SMouboo SPinkie SSnake SSPiky SWicked ToxicDart Necro ) diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt index 909c95b7..c1a0b5f7 100644 --- a/npc/013-1/sagatha.txt +++ b/npc/013-1/sagatha.txt @@ -281,7 +281,8 @@ L_Teach_A10: mes "\"To protect against others' magic, take a small mushroom from a shady place. Mushrooms draw things out of the earth. Rub your mushroom into pieces between your hands.\""; next; mes "[Sagatha the Witch]"; - mes "\"Then say '" + get(.invocation$, "magic barrier") + "' and let the mushroom's power take over.\""; + mesq l("Then say %s and let the mushroom's power take over.", b("betsanc")); + learnskill EVOL_PHYSICAL_SHIELD, 1; goto L_practice; L_Teach_A11: -- cgit v1.2.3-70-g09d2 From 21686a4a781c38c82a046819485922b6c33c91fb Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Wed, 14 Apr 2021 14:39:37 -0300 Subject: Start working on Sagatha's scripts --- npc/013-1/sagatha.txt | 113 +++++++++++++++++++++++++------------------------- 1 file changed, 56 insertions(+), 57 deletions(-) (limited to 'npc/013-1/sagatha.txt') diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt index c1a0b5f7..24b50725 100644 --- a/npc/013-1/sagatha.txt +++ b/npc/013-1/sagatha.txt @@ -34,14 +34,14 @@ L_write: } function script SagathaStatus { - if (getequipid(equip_head) != 1216 && getequipid(equip_head) != 752) + if (!isequippedcnt(MoubooHead, FluffyHat)) goto L_Next; @value = 15; callfunc "QuestSagathaAnnoy"; goto L_Next; L_Next: - @mexp = MAGIC_EXPERIENCE & 65535; + @mexp = MAGIC_EXP; @has_magic = getskilllv(SKILL_MAGIC); @evil = 0; @good = 0; @@ -82,11 +82,13 @@ L_Next: @Q_status = (QUEST_MAGIC & @Q_MASK) >> @Q_SHIFT; if (MAGIC_FLAGS & MFLAG_KNOWS_SAGATHA) - mes "[Sagatha the Witch]"; - if (!(MAGIC_FLAGS & MFLAG_KNOWS_SAGATHA)) - mes "[Witch]"; + .n$=l("Sagatha the Witch"); + else + .@n$=l("Witch"); + // Header + mesn .@n$; // if fluffyhat - if (getequipid(equip_head) == 752) + if (isequipped(FluffyHat)) goto L_hat_attack; if (@evil) goto L_evil; @@ -95,9 +97,9 @@ L_Next: if (MAGIC_FLAGS & MFLAG_KNOWS_SAGATHA) goto L_wb; - mes "Before you stands a beautiful woman, dressed in dark purple robes and wearing a witch's hat."; + mesc l("Before you stands a beautiful woman, dressed in dark purple robes and wearing a witch's hat."); - mes "She looks at you suspiciously."; + mesc l("She looks at you suspiciously."); next; menu "Who are you?", L_Next, @@ -106,7 +108,7 @@ L_Next: "Goodbye.", L_close; L_Next: - mes "[Witch]"; + mesn .@n$; mes "\"I am what you humans call a witch. I am a human who has chosen all living creatures as what you call family.\""; next; menu @@ -118,10 +120,7 @@ L_hat_attack: mes "The witch seems to be trembling with disgust as she stares at your headgear."; mes "\"Do you think that is funny?\" she snarls."; next; - if (MAGIC_FLAGS & MFLAG_KNOWS_SAGATHA) - mes "[Sagatha the Witch]"; - if (!(MAGIC_FLAGS & MFLAG_KNOWS_SAGATHA)) - mes "[Witch]"; + mesn .@n$; mes "\"You have no idea what that poor creature felt!\""; mes "She snaps her fingers."; mes "\"Let me show you...\""; @@ -131,27 +130,27 @@ L_hat_attack: close; L_Intro_name: - mes "[Sagatha the Witch]"; - mes "\"They call me Sagatha.\""; + mesn .@n$; + mesq l("They call me Sagatha."); MAGIC_FLAGS = MAGIC_FLAGS | MFLAG_KNOWS_SAGATHA; next; goto L_Main; L_Intro_givename: - mes "[Witch]"; - mes "\"Ah.\""; + mesn .@n$; + mesq l("Ah."); next; menu "What's yours?", L_Intro_name, "Uhm... bye.", L_close; L_evil: - mes "The witch's eyes flare up in anger as she notices you, and she turns away from you."; - mes "Whatever the reason, she doesn't seem to like you."; + mesc l("The witch's eyes flare up in anger as she notices you, and she turns away from you."); + mesc l("Whatever the reason, she doesn't seem to like you."); close; L_unhappy: - mes "The witch glares at you in anger."; + mesc l("The witch glares at you in anger."); mes "\"I wonder if you can still sleep after killing those innocent forest creatures!"; mes "I am sure that they will come back to haunt you in your dreams!\""; close; @@ -184,11 +183,11 @@ L_Teach_Initial: goto L_initial_nogood; if (getskilllv(SKILL_MAGIC_NATURE) < 2) goto L_initial_nonature; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "She nods."; mes "\"For now, yes. But you will have to prove that you really care about more than yourself.\""; next; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "She snaps her fingers, and without warning you begin to acutely sense the magical energies around you, for a brief instant!"; @Q_status = @STATUS_STUDENT; callsub S_Update_Var; @@ -196,7 +195,7 @@ L_Teach_Initial: @SUP_lvl = 2; callsub S_up_astral; next; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"In the future, I will teach you nature and astral magic. For the other schools there are better teachers around.\""; if (getskilllv(SKILL_MAGIC) < 2) mes "\"Your skill in magic won't be great enough to use some of the spells yet, so keep practicing and visiting the mana seed until it is.\""; @@ -204,19 +203,19 @@ L_Teach_Initial: goto L_Main; L_initial_nogood: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"I don't take strangers as students.\""; next; goto L_Main; L_initial_nonature: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"I might, but you don't even understand the basics of nature magic.\""; next; goto L_Main; L_explain_magic: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"No.\""; next; goto L_Main; @@ -235,7 +234,7 @@ L_Teach: if (@Q_status == @STATUS_STUDENT_N11) goto L_Teach_N11; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"Not yet. You have to ask the mana seed to give you more power.\""; next; goto L_Main; @@ -246,78 +245,78 @@ L_practice: callsub S_Update_Var; getexp 1000,0; next; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"Now go and practice.\""; next; goto L_Main; L_Teach_N14: - if (@mexp < 125) + if (@mexp < 125 || getskilllv(SKILL_MAGIC) < 1) goto L_Teach_noexp; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"Some forest creatures sometimes overgrow their fur or hide. That makes them uncomfortable.\""; next; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"You can help them with shearing magic. Press your hands together and say '" + get(.invocation$, "shear") + "'. Then touch them with your hands, and brush off any excess.\""; next; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"The spell is strong, so you only need to do this once. Be careful not to cut them. Some things they shed are useful. Often they will leave them to you as a thank-you.\""; goto L_practice; L_Teach_N10: - if (@mexp < 150) + if (@mexp < 150 || getskilllv(SKILL_MAGIC) < 2) goto L_Teach_noexp; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"Next, a nature spell. Take a cocoon shell. Hold it in your hand. Feel its lightness.\""; next; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"Now whisper '" + get(.invocation$, "flying-backpack") + "', and if your backpack was pressing on you you should no longer feel it now.\""; goto L_practice; L_Teach_A10: - if (@mexp < 180) + if (@mexp < 180 || getskilllv(SKILL_MAGIC) < 2) goto L_Teach_noexp; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"To protect against others' magic, take a small mushroom from a shady place. Mushrooms draw things out of the earth. Rub your mushroom into pieces between your hands.\""; next; - mes "[Sagatha the Witch]"; + mesn .@n$; mesq l("Then say %s and let the mushroom's power take over.", b("betsanc")); learnskill EVOL_PHYSICAL_SHIELD, 1; goto L_practice; L_Teach_A11: - if (@mexp < 200) + if (@mexp < 200 || getskilllv(SKILL_MAGIC) < 2) goto L_Teach_noexp; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"If you must fight, call allies. You can call spiky mushrooms out of the ground with a mushroom spike and a root. Hold up the spike and call out to them: '" + get(.invocation$, "smsmushrooms") + "'. Then press the root to the ground.\""; next; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"Spiky mushrooms often grow too many spikes, so you can shear the spikes off of some.\""; next; goto L_practice; L_Teach_A12: - if (@mexp < 220) + if (@mexp < 220 || getskilllv(SKILL_MAGIC) < 2) goto L_Teach_noexp; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"You can call fluffies, too. But for them you must call out '" + get(.invocation$, "smfluffies") + "' instead, with white fluffy fur instead of a spike. And don't forget the root.\""; goto L_practice; L_Teach_N11: - if (@mexp < 250) + if (@mexp < 250 || getskilllv(SKILL_MAGIC) < 2) goto L_Teach_noexp; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"You can harden your skin with a hard spike. Hold it in your hands and speak '" + get(.invocation$, "protect") + "', then draw its hardness into your skin.\""; next; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"Or call it into someone else's skin, by saying that someone's name right after the '" + get(.invocation$, "protect") + "'.\""; next; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"You can also remove this spell from yourself if you say '" + get(.invocation$, "antiprotect") + "'.\""; goto L_practice; L_Teach_noexp: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"You must practice more first.\""; next; goto L_Main; @@ -346,13 +345,13 @@ L_Question: if (@c == @QQ_ASTRALSOUL) goto L_Q_astralsoul; - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"That doesn't concern you.\""; next; goto L_Main; L_Q_astralsoul: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"Yes, there is a way to improve your magic.\""; next; mes "\"Did you ever hear about focusing?\""; @@ -366,25 +365,25 @@ L_Q_astralsoul: goto L_Main; L_Q_old_wizard: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"A kind and wise wizard.\""; next; goto L_Main; L_Q_imp: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"He is an evil and cruel one. He lies and cheats and will try to take advantage of you. Stay away from him.\""; next; goto L_Main; L_Q_elanore: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"Elanore is the Tulimshar town healer.\""; next; goto L_Main; L_Q_manaseed: - mes "[Sagatha the Witch]"; + mesn .@n$; if (!@has_magic && (MAGIC_FLAGS & MFLAG_TOUCHED_MANASEED)) goto L_Q_manaseed_unabsorbed; if (@has_magic) @@ -404,19 +403,19 @@ L_Q_manaseed_m: goto L_Main; L_Q_manapotion: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"I won't make one without a cauldron, that would be wasteful. And I'm not going to start carrying a cauldron around.\""; next; goto L_Main; L_Q_wyara: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "\"Wyara decided to live with humans, in Hurnscald. She tries to make the world a better place in her own way. Please be kind to her, she is a very good person.\""; next; goto L_Main; L_Q_auldsbel: - mes "[Sagatha the Witch]"; + mesn .@n$; mes "She frowns."; mes "\"He's a transmutation wizard, member of the northern council. Reasonably competent wizard, too.\""; next; -- cgit v1.2.3-70-g09d2 From 9ac3aa578729997fa7a7714ec8d783e9966669a0 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Wed, 14 Apr 2021 14:42:40 -0300 Subject: Fix betsanc learning, but we need detsanc or... something. --- npc/013-1/sagatha.txt | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'npc/013-1/sagatha.txt') diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt index 24b50725..c0251ebd 100644 --- a/npc/013-1/sagatha.txt +++ b/npc/013-1/sagatha.txt @@ -306,10 +306,8 @@ L_Teach_N11: if (@mexp < 250 || getskilllv(SKILL_MAGIC) < 2) goto L_Teach_noexp; mesn .@n$; - mes "\"You can harden your skin with a hard spike. Hold it in your hands and speak '" + get(.invocation$, "protect") + "', then draw its hardness into your skin.\""; - next; - mesn .@n$; - mes "\"Or call it into someone else's skin, by saying that someone's name right after the '" + get(.invocation$, "protect") + "'.\""; + mesq l("You can harden your skin with a hard spike. Hold it in your hands and speak '%s', then draw its hardness into your skin, or the skin of someone's else.", b("betsanc")); + learnskill EVOL_PHYSICAL_SHIELD; next; mesn .@n$; mes "\"You can also remove this spell from yourself if you say '" + get(.invocation$, "antiprotect") + "'.\""; -- cgit v1.2.3-70-g09d2 From 721b6d2f39bbddd228d534114ea0ba8393990ffa Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Wed, 14 Apr 2021 17:31:15 -0300 Subject: Implement the second tier summoning magic (Astral and Dark) Kalakarenk, Kalboo, Kalgina, Kalrenk, Halhiss and Helorp. Update Sagatha, Pauline and Waric on the way. --- db/pre-re/skill_db.conf | 122 ++++++++++++++++++++++++- db/pre-re/skill_tree.conf | 6 ++ npc/001-2/pauline.txt | 167 +++++++++++++---------------------- npc/013-1/sagatha.txt | 22 ++--- npc/017-4/waric.txt | 138 +++++++++++++++-------------- npc/magic/config.txt | 2 + npc/magic/final.txt | 152 ++----------------------------- npc/magic/level1-grow-plants.txt | 1 + npc/magic/level2-summon-monsters.txt | 53 +++++++++++ npc/scripts.conf | 1 + 10 files changed, 337 insertions(+), 327 deletions(-) create mode 100644 npc/magic/level2-summon-monsters.txt (limited to 'npc/013-1/sagatha.txt') diff --git a/db/pre-re/skill_db.conf b/db/pre-re/skill_db.conf index bbbe02b9..a5e6d359 100644 --- a/db/pre-re/skill_db.conf +++ b/db/pre-re/skill_db.conf @@ -38816,6 +38816,126 @@ skill_db: ( SPCost: 10 } }, -// MagicBlade Sulphur Kalmurk Parum ArrowHail Barrier(OK?) EnchantLifestone FlyingBackpack(?) Joyplim Hide(?) Rain Ingrav Knuclkes MakeArrow MakeIronPowder MakeShirt MakeTanktop MakeSTanktop Protect Shear SFluffy SMouboo SPinkie SSnake SSPiky SWicked ToxicDart Necro +{ + Id: 20031 + Name: "SKILL_KALAKARENK" + Description: "Kalakarenk" + MaxLevel: 9 + SkillType: { + Self: true + } + SkillInfo: { + Quest: true + } + CoolDown: 20000 + Requirements: { + SPCost: 39 + Items: { + Root: 0 + WhiteFur: 0 + } + } +}, +{ + Id: 20032 + Name: "SKILL_KALBOO" + Description: "Kalboo" + MaxLevel: 9 + SkillType: { + Self: true + } + SkillInfo: { + Quest: true + } + CoolDown: 20000 + Requirements: { + SPCost: 35 + Items: { + Root: 0 + MoubooFigurine: 0 + } + } +}, +{ + Id: 20033 + Name: "SKILL_KALGINA" + Description: "Kalgina" + MaxLevel: 9 + SkillType: { + Self: true + } + SkillInfo: { + Quest: true + } + CoolDown: 20000 + Requirements: { + SPCost: 35 + Items: { + Root: 0 + PinkAntenna: 0 + } + } +}, +{ + Id: 20034 + Name: "SKILL_KALRENK" + Description: "Kalrenk" + MaxLevel: 9 + SkillType: { + Self: true + } + SkillInfo: { + Quest: true + } + CoolDown: 20000 + Requirements: { + SPCost: 33 + Items: { + Root: 0 + HardSpike: 0 + } + } +}, +{ + Id: 20035 + Name: "SKILL_HALHISS" + Description: "Halhiss" + MaxLevel: 9 + SkillType: { + Self: true + } + SkillInfo: { + Quest: true + } + CoolDown: 15000 + Requirements: { + SPCost: 40 + Items: { + DarkCrystal: 0 + SnakeEgg: 0 + } + } +}, +{ + Id: 20036 + Name: "SKILL_HELORP" + Description: "Helorp" + MaxLevel: 9 + SkillType: { + Self: true + } + SkillInfo: { + Quest: true + } + CoolDown: 15000 + Requirements: { + SPCost: 35 + Items: { + DarkCrystal: 0 + SmallMushroom: 0 + } + } +}, +// MagicBlade Sulphur Kalmurk Parum ArrowHail Barrier(OK?) EnchantLifestone FlyingBackpack(?) Joyplim Hide(?) Rain Ingrav Knuclkes MakeArrow MakeIronPowder MakeShirt MakeTanktop MakeSTanktop Protect Shear SFluffy SMouboo SPinkie SSnake SSPiky SWicked ToxicDart ) diff --git a/db/pre-re/skill_tree.conf b/db/pre-re/skill_tree.conf index 87c3654e..d7e4bd33 100644 --- a/db/pre-re/skill_tree.conf +++ b/db/pre-re/skill_tree.conf @@ -79,6 +79,12 @@ Talpan: { // Level 2 EVOL_PHYSICAL_SHIELD: 5 SKILL_INMA: 9 + SKILL_KALAKARENK: 9 + SKILL_KALBOO: 9 + SKILL_KALGINA: 9 + SKILL_KALRENK: 9 + SKILL_HALHISS: 9 + SKILL_HELORP: 9 // Level 3 // Level 4 diff --git a/npc/001-2/pauline.txt b/npc/001-2/pauline.txt index 9ec35396..992a371a 100644 --- a/npc/001-2/pauline.txt +++ b/npc/001-2/pauline.txt @@ -16,14 +16,14 @@ if (getskilllv(SKILL_MAGIC_ASTRAL) > 0) goto L_Magic; - mes "[Pauline]"; + mesn; mes "\"I've mastered several schools of magic and fought the Yeti in Kaizei.\""; next; mes "\"The path of magic is a long and difficult one.\""; goto L_close; L_Magic: - mes "[Pauline]"; + mesn; mes "\"Ah. I see you are skilled in the Art of Astral Magic.\""; mes "\"Who taught you?\""; menu @@ -38,7 +38,7 @@ L_Next: "No, thanks.", L_close; L_Sagatha: - mes "[Pauline]"; + mesn; mes "\"Ah, that Witch!\""; mes "\"Very well.\""; next; @@ -49,7 +49,7 @@ L_Sagatha: "No.", L_close; L_Back: - mes "[Pauline]"; + mesn; mes "\"So, you're back. Are you ready to share knowledge now?\""; menu "Yes.", L_Spells, @@ -58,7 +58,7 @@ L_Back: L_Spells: @pauline_state = 1; callsub S_Update_Mask; - mes "[Pauline]"; + mesn; mes "\"Okay.\""; mes "\"Not long ago I discovered some new caves near Tulimshar. In an abandond chamber I found some paintings on the wall.\""; next; @@ -73,22 +73,22 @@ L_Spells: "No, tell me more.", L_Next1; L_Next1: - mes "[Pauline]"; + mesn; mes "\"Well I could only read the invocations. So I don't exactly know what kind of ingredients you are going to need.\""; - mes "\"The first one for the mouboo was " + get(.invocation$, "smmouboo") + " and the one for the pinkie was " + get(.invocation$, "smpinkie") +".\""; + mesq l("\"The first one for the mouboo was %s and the one for the pinkie was %s.", b("Kalboo"), b("Kalgina")); next; mes "\"For the pinkie spell my suggestion is to try similar ingredients to the other Astral spells. Try a root and some item typical for pinkies.\""; mes "\"The mouboo spell might be more complicated. From what I could translate, one of the spell components is crafted by magic.\""; next; mes "\"When you find the right ingredients, come back and bring them to me to try those spells out.\""; next; - mes "\"Goodbye.\""; + mesq l("Goodbye."); @pauline_state = 2; callsub S_Update_Mask; goto L_close; L_Ingredients: - mes "[Pauline]"; + mesn; mes "\"Hello, have you found out what ingredients to use yet?\""; menu "Yes.", L_KnowIngredientsMouboo, @@ -105,149 +105,108 @@ L_KnowIngredientsMouboo: "No.", L_ComeBackLater; L_Next3: - cleararray @items$, "", getarraysize(@items$); - cleararray @item_names$, "", getarraysize(@item_names$); - setarray @items$, "AlizarinHerb", "GambogeHerb", "SilkCocoon", "PinkAntenna", "MaggotSlime", "BugLeg", "GrassSeeds", "ReedBundle", "RoastedAcorn", "Candy", "Milk", "BottleOfWater", "ChickenLeg", "Steak", "Root", "RawLog", "Beer", "CactusDrink", "MoubooFigurine", "Acorn", "Iten", "WarpedLog"; - setarray @item_names$, "Alizarin Herb", "Gamboge Herb", "Silk Cocoon", "Pink Antenna", "Maggot Slime", "Bug Leg", "Grass Seeds", "Reed Bundle", "Roasted Acorn", "Candy", "Milk", "Bottle of Water", "Chicken Leg", "Steak", "Root", "Raw Log", "Beer", "Cactus Drink", "Mouboo Figurine", "Acorn", "Iten", "Warped Log"; - mes "\"Then tell me the ingredients for the mouboo summoning spell and give them to me. Start with the first ingredient and then tell me the second one separately.\""; + mesq l("Then tell me the ingredients for the mouboo summoning spell and give them to me. Start with the first ingredient and then tell me the second one separately."); + mes "##B" + l("Drag and drop an item from your inventory.") + "##b"; next; - callfunc "DynamicItemMenu$"; - @pauline_ingredient1$ = @item$; - mes "Next ingredient."; - callfunc "DynamicItemMenu$"; - @pauline_ingredient2$ = @item$; - if (@pauline_ingredient1$ == "") - goto L_Wrong; - if (@pauline_ingredient2$ == "") + .@it1 = requestitem(); + mes l("Next ingredient."); + mes "##B" + l("Drag and drop an item from your inventory.") + "##b"; + .@it2 = requestitem(); + + if (.@it1 < 1 || .@it2 < 1) goto L_Wrong; - if (countitem(@pauline_ingredient1$) < 1) - goto L_NotEnough; - if (countitem(@pauline_ingredient2$) < 1) + if (countitem(.@it1) < 1 || countitem(.@it2) < 1) goto L_NotEnough; - mes "\"Do you want to give me these items?\""; + mesq l("Do you want to give me these items?"); menu - "No.", L_ComeBackLater, - "Yes.", L_Next4; + l("No."), L_ComeBackLater, + l("Yes."), L_Next4; L_Next4: - delitem @pauline_ingredient1$, 1; - delitem @pauline_ingredient2$, 1; - mes "\"Okay let me try this.\""; - if (@pauline_ingredient1$ == "Root") - goto L_Pass1Mouboo; - if (@pauline_ingredient1$ == "MoubooFigurine") - goto L_Pass2Mouboo; - goto L_DidNotWorkMouboo; - -L_DidNotWorkMouboo: - mes "The Witch takes " + @pauline_ingredient1$ + " and " + @pauline_ingredient2$ + " and puts them together calling " + get(.invocation$, "summon-mouboo") + "."; - mes "Nothing happens."; - mes "[Pauline]"; - mes "\"It seems you did not tell me the correct ingredients. Come back when you find the correct ones.\""; - goto L_close; - -L_Pass1Mouboo: - if (@pauline_ingredient2$ == "MoubooFigurine") + delitem .@it1, 1; + delitem .@it2, 1; + mesq l("Okay let me try this."); + if ((.@it1 == Root && .@it2 == MoubooFigurine) || + (.@it1 == MoubooFigurine && .@it2 == Root)) goto L_TrySpellMouboo; - goto L_DidNotWorkMouboo; -L_Pass2Mouboo: - if (@pauline_ingredient2$ == "Root") - goto L_TrySpellMouboo; - goto L_DidNotWorkMouboo; + mesc l("The Witch takes %s and %s and put them togheter calling %s.", getitemlink(.@it1), getitemlink(.@it2), b("kalboo")); + mesc l("Nothing happens."); + mesn; + mesq l("It seems you did not tell me the correct ingredients. Come back when you find the correct ones."); + goto L_close; L_TrySpellMouboo: - mes "The Witch takes " + @pauline_ingredient1$ + " and " + @pauline_ingredient2$ + " and puts them together calling " + get(.invocation$, "summon-mouboo") + "."; - monster "001-1", 55,68, "Good", 1028, 1; - mes "[Pauline]"; - mes "\"It worked!\""; + mesc l("The Witch takes %s and %s and put them togheter calling %s.", getitemlink(.@it1), getitemlink(.@it2), b("kalboo")); + monster "001-1", 55,68, "Good", Mouboo, 1; + mesn; + mesq l("It worked!"); @pauline_state = 3; callsub S_Update_Mask; getexp @pauline_REWARD, 0; goto L_close; L_KnowIngredientsPinkie: - cleararray @items$, "", getarraysize(@items$); - cleararray @item_names$, "", getarraysize(@item_names$); - setarray @items$, "AlizarinHerb", "GambogeHerb", "SilkCocoon", "PinkAntenna", "MaggotSlime", "BugLeg", "GrassSeeds", "ReedBundle", "RoastedAcorn", "Candy", "Milk", "BottleOfWater", "ChickenLeg", "Steak", "Root", "RawLog", "Beer", "CactusDrink", "MoubooFigurine", "Acorn", "Iten", "WarpedLog"; - setarray @item_names$, "Alizarin Herb", "Gamboge Herb", "Silk Cocoon", "Pink Antenna", "Maggot Slime", "Bug Leg", "Grass Seeds", "Reed Bundle", "Roasted Acorn", "Candy", "Milk", "Bottle of Water", "Chicken Leg", "Steak", "Root", "Raw Log", "Beer", "Cactus Drink", "Mouboo Figurine", "Acorn", "Iten", "Warped Log"; - mes "[Pauline]"; - mes "\"Now give me the ingredients for the pinkie spell.\""; + mes "##B" + l("Drag and drop an item from your inventory.") + "##b"; next; - callfunc "DynamicItemMenu$"; - @pauline_ingredient1$ = @item$; - mes "Next ingredient."; - callfunc "DynamicItemMenu$"; - @pauline_ingredient2$ = @item$; - if (@pauline_ingredient1$ == "") - goto L_Wrong; - if (@pauline_ingredient2$ == "") + .@it1 = requestitem(); + mes l("Next ingredient."); + mes "##B" + l("Drag and drop an item from your inventory.") + "##b"; + .@it2 = requestitem(); + + if (.@it1 < 1 || .@it2 < 1) goto L_Wrong; - if (countitem(@pauline_ingredient1$) < 1) - goto L_NotEnough; - if (countitem(@pauline_ingredient2$) < 1) + if (countitem(.@it1) < 1 || countitem(.@it2) < 1) goto L_NotEnough; - mes "\"Do you want to give me these items?\""; + mesq l("Do you want to give me these items?"); menu "No.", L_ComeBackLater, "Yes.", L_Next5; L_Next5: - delitem @pauline_ingredient1$, 1; - delitem @pauline_ingredient2$, 1; - mes "\"Okay, let me try this.\""; - if (@pauline_ingredient1$ == "Root") - goto L_Pass1Pinkie; - if (@pauline_ingredient1$ == "PinkAntenna") - goto L_Pass2Pinkie; - goto L_DidNotWorkPinkie; - -L_DidNotWorkPinkie: - mes "The Witch takes " + @pauline_ingredient1$ + " and " + @pauline_ingredient2$ + " and puts them together calling " + get(.invocation$, "summon-pinkie") + "."; - mes "Nothing happens."; - mes "[Pauline]"; - mes "\"It seems you did not tell me the correct ingredients. Come back when you find the correct ones.\""; - goto L_close; - -L_Pass1Pinkie: - if (@pauline_ingredient2$ == "PinkAntenna") + delitem .@it1, 1; + delitem .@it2, 1; + mesq l("Okay let me try this."); + if ((.@it1 == Root && .@it2 == PinkAntenna) || + (.@it1 == PinkAntenna && .@it2 == Root)) goto L_TrySpellPinkie; - goto L_DidNotWorkPinkie; -L_Pass2Pinkie: - if (@pauline_ingredient2$ == "Root") - goto L_TrySpellPinkie; - goto L_DidNotWorkPinkie; + mesc l("The Witch takes %s and %s and put them togheter calling %s.", getitemlink(.@it1), getitemlink(.@it2), b("kalgina")); + mesc l("Nothing happens."); + mesn; + mesq l("It seems you did not tell me the correct ingredients. Come back when you find the correct ones."); + goto L_close; + L_TrySpellPinkie: - mes "The Witch takes " + @pauline_ingredient1$ + " and " + @pauline_ingredient2$ + " and puts them together calling " + get(.invocation$, "summon-pinkie") + "."; - monster "001-1", 54,68, "Good", 1018, 1; - mes "[Pauline]"; - mes "\"It worked!\""; + mesc l("The Witch takes %s and %s and put them togheter calling %s.", getitemlink(.@it1), getitemlink(.@it2), b("kalgina")); + monster "001-1", 54,68, "Good", Pinkie, 1; + mesn; + mesq l("It worked!"); @pauline_state = 4; callsub S_Update_Mask; getexp @pauline_REWARD, 0; goto L_close; L_MoreMagic: - mes "[Pauline]"; + mesn; mes "\"Thanks for telling me the ingredients. As soon as I find out more about those wall paintings I will let you know.\""; goto L_close; L_Wrong: mes "The Witch looks at you and snorts."; - mes "[Pauline]"; + mesn; mes "\"You told me the wrong ingredients. Come back as soon as you know the correct ones.\""; goto L_close; L_NotEnough: - mes "[Pauline]"; + mesn; mes "\"Hey, you don't have this with you!\""; mes "\"Come back when you have the right ingredients.\""; goto L_close; L_ComeBackLater: - mes "[Pauline]"; + mesn; mes "\"Then come back later.\""; goto L_close; diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt index c0251ebd..460dcb7f 100644 --- a/npc/013-1/sagatha.txt +++ b/npc/013-1/sagatha.txt @@ -257,27 +257,27 @@ L_Teach_N14: mes "\"Some forest creatures sometimes overgrow their fur or hide. That makes them uncomfortable.\""; next; mesn .@n$; - mes "\"You can help them with shearing magic. Press your hands together and say '" + get(.invocation$, "shear") + "'. Then touch them with your hands, and brush off any excess.\""; + mesq l("You can help them with shearing magic. Press your hands together and say '" + get(.invocation$, "shear") + "'. Then touch them with your hands, and brush off any excess."); next; mesn .@n$; - mes "\"The spell is strong, so you only need to do this once. Be careful not to cut them. Some things they shed are useful. Often they will leave them to you as a thank-you.\""; + mesq l("The spell is strong, so you only need to do this once. Be careful not to cut them. Some things they shed are useful. Often they will leave them to you as a thank-you."); goto L_practice; L_Teach_N10: if (@mexp < 150 || getskilllv(SKILL_MAGIC) < 2) goto L_Teach_noexp; mesn .@n$; - mes "\"Next, a nature spell. Take a cocoon shell. Hold it in your hand. Feel its lightness.\""; + mesq l("Next, a nature spell. Take a cocoon shell. Hold it in your hand. Feel its lightness."); next; mesn .@n$; - mes "\"Now whisper '" + get(.invocation$, "flying-backpack") + "', and if your backpack was pressing on you you should no longer feel it now.\""; + mesq l("Now whisper '" + get(.invocation$, "flying-backpack") + "', and if your backpack was pressing on you you should no longer feel it now."); goto L_practice; L_Teach_A10: if (@mexp < 180 || getskilllv(SKILL_MAGIC) < 2) goto L_Teach_noexp; mesn .@n$; - mes "\"To protect against others' magic, take a small mushroom from a shady place. Mushrooms draw things out of the earth. Rub your mushroom into pieces between your hands.\""; + mesq l("To protect against others' magic, take a small mushroom from a shady place. Mushrooms draw things out of the earth. Rub your mushroom into pieces between your hands."); next; mesn .@n$; mesq l("Then say %s and let the mushroom's power take over.", b("betsanc")); @@ -288,10 +288,11 @@ L_Teach_A11: if (@mexp < 200 || getskilllv(SKILL_MAGIC) < 2) goto L_Teach_noexp; mesn .@n$; - mes "\"If you must fight, call allies. You can call spiky mushrooms out of the ground with a mushroom spike and a root. Hold up the spike and call out to them: '" + get(.invocation$, "smsmushrooms") + "'. Then press the root to the ground.\""; + mesq l("If you must fight, call allies. You can call spiky mushrooms out of the ground with a mushroom spike and a root. Hold up the spike and call out to them: '%s'. Then press the root to the ground.", b("Kalrenk")); + learnskill SKILL_KALRENK; next; mesn .@n$; - mes "\"Spiky mushrooms often grow too many spikes, so you can shear the spikes off of some.\""; + mesq l("Spiky mushrooms often grow too many spikes, so you can shear the spikes off of some."); next; goto L_practice; @@ -299,7 +300,8 @@ L_Teach_A12: if (@mexp < 220 || getskilllv(SKILL_MAGIC) < 2) goto L_Teach_noexp; mesn .@n$; - mes "\"You can call fluffies, too. But for them you must call out '" + get(.invocation$, "smfluffies") + "' instead, with white fluffy fur instead of a spike. And don't forget the root.\""; + mesq l("You can call fluffies, too. But for them you must call out '%s' instead, with white fluffy fur instead of a spike. And don't forget the root.", b("Kalakarenk")); + learnskill SKILL_KALAKARENK; goto L_practice; L_Teach_N11: @@ -310,12 +312,12 @@ L_Teach_N11: learnskill EVOL_PHYSICAL_SHIELD; next; mesn .@n$; - mes "\"You can also remove this spell from yourself if you say '" + get(.invocation$, "antiprotect") + "'.\""; + mesq l("You can also remove this spell from yourself if you say '" + get(.invocation$, "antiprotect") + "'."); goto L_practice; L_Teach_noexp: mesn .@n$; - mes "\"You must practice more first.\""; + mesq l("You must practice more first."); next; goto L_Main; diff --git a/npc/017-4/waric.txt b/npc/017-4/waric.txt index 637f4526..1f7db840 100644 --- a/npc/017-4/waric.txt +++ b/npc/017-4/waric.txt @@ -27,17 +27,17 @@ if (OrumQuest > 17) goto L_Flower1; if (OrumQuest > 15) goto L_Mistrust; - mes "[Waric]"; + mesn; mes "\"You! You really are far too persistent to know what is good for you!\""; mes "He turns towards Orum."; next; - mes "[Waric]"; + mesn; mes "\"It seems your ridiculous Guarding Spirit has failed at his task."; mes "Deal with this. We cannot afford any more of these distractions.\""; goto L_close; L_Mistrust: - mes "[Waric]"; + mesn; mes "\"So, you say you want to help us? You do not look very competent."; mes "Also, I do not see what motivation you have to help.\""; next; @@ -45,7 +45,7 @@ L_Mistrust: goto L_close; L_Flower1: - mes "[Waric]"; + mesn; mes "\"You placed the first flower. Why, I am surprised! I did not expect you to actually stay and become useful.\""; if (!(getskilllv(SKILL_MAGIC))) goto L_close; @@ -58,34 +58,34 @@ L_Next: goto L_Sagatha; if (!@killed_mouboo && !@cut_tree) goto L_Undecided; - mes "[Waric]"; + mesn; mes "\"Hmm. I suppose I could do that. You seem to have some potential."; mes "First, proceed with the task given by Orum.\""; goto L_close; L_Flower2: - mes "[Waric]"; + mesn; mes "\"You placed the second flower? It seems Orum's choice of tools is better than expected.\""; goto L_close; L_Flower3: - mes "[Waric]"; + mesn; mes "\"I saw that you helped to create and place the third flower. Good.\""; goto L_close; L_Flower4: - mes "[Waric]"; + mesn; mes "\"Now that you have placed the fourth flower, we are very close to reaching our goal. Keep it up.\""; goto L_close; L_Flower5: - mes "[Waric]"; + mesn; mes "\"Hahaha, excellent. You handled the creation of our pentagram very well. I will be keeping that in mind."; mes "I have advised Orum to give you a reward. Go now and speak with him.\""; goto L_close; L_DarkMagic: - mes "[Waric]"; + mesn; mes "\"So, you have gotten your reward and finished the task Orum had for you. Very good.\""; menu "Can you teach me some magic?", L_Next1, @@ -96,18 +96,18 @@ L_Next1: goto L_Sagatha; if (!@killed_mouboo && !@cut_tree) goto L_Undecided; - mes "[Waric]"; + mesn; mes "\"You appear to be trustworthy. I will allow you to become my apprentice.\""; mes "\"I will teach you the basics of the branch of magic I practice. It is called Dark Magic. Very few people know of its existence these days, and hardly anyone is capable of teaching it.\""; mes "\"You are very lucky that fate has brought us together.\""; next; - mes "[Waric]"; + mesn; mes "\"You cut the tree to please the Earth Spirit. You chose the Dark Side of magic, and this cannot be undone.\""; mes "\"Dark Magic draws its power from hate and anger. Your magic will be stronger against good creatures, and weaker against the undead and the corrupt.\""; next; mes "\"Once you start practicing Dark Magic, using certain spells will be painful. Everything comes with a price.\""; next; - mes "[Waric]"; + mesn; mes "\"So, now that you know more about Dark Magic, are you still willing to become my apprentice?\""; mes "\"Once you cross this line, there is no going back. Keep this in mind!\""; OrumQuest = 33; @@ -117,7 +117,7 @@ L_Next1: L_DarkTalkAgain: mes "The old wizard seems to be annoyed."; - mes "[Waric]"; + mesn; mes "\"Very well. Once you start practicing Dark Magic, certain spells will be painful to cast. Your magic will be stronger against good creatures, and weaker against the undead and the corrupt.\""; next; mes "\"When you cross this line, there is no going back. Remember that!\""; @@ -128,7 +128,7 @@ L_DarkTalkAgain: "Yes. I want to be your apprentice.", L_Oath; L_BackforOath: - mes "[Waric]"; + mesn; mes "\"Ah, you're back. Have you decided yet if you want to become my apprentice?\""; menu "No." , L_ComeBackLater, @@ -138,7 +138,7 @@ L_BackforOath: L_LastChance: mes "Waric looks at you, with despise evident on his face."; next; - mes "[Waric]"; + mesn; mes "\"I knew you were a coward.\""; mes "\"I will give you one last chance to take the oath. If you refuse this time as well, I will no longer teach you.\""; next; @@ -149,7 +149,7 @@ L_LastChance: "I have to reconsider.", L_ComeBackLater; L_Next2: - mes "[Waric]"; + mesn; mes "\"If you stop during the oath again, I will not teach you anything. If you are not sure whether you want to become my apprentice or not, take more time to reconsider. However, this is your last chance to do so.\""; next; menu @@ -157,13 +157,13 @@ L_Next2: "I am ready to take the oath. [last chance!]", L_Oath; L_Oath: - mes "[Waric]"; + mesn; mes "\"Now say the oath of the Dark.\""; next; mes "Suddenly the room turns darker and writing penned in flames appears in front of you. You feel yourself shaking and shivering."; next; mes "As Waric yells, the walls tremble."; - mes "[Waric]"; + mesn; mes "\"Read it!\""; mes "The sound of his voice echoes in the cave."; next; @@ -179,7 +179,7 @@ L_Oath: mes "I shall prevail, other shall perish."; next; mes "Warric screams at your silence."; - mes "[Waric]"; + mesn; mes "\"Say it! Say it now!\""; next; menu @@ -209,26 +209,27 @@ L_NoOath: goto L_close; L_Mushroom: - mes "[Waric]"; - mes "\"Now that you are a student of mine, I will teach you some spells.\""; + mesn; + mesq l("Now that you are a student of mine, I will teach you some spells."); next; - mes "\"We will start with an easy one. I will teach you how to summon a wicked mushroom.\""; - mes "\"The spell consumes a Small Mushroom and a Dark Crystal. Shove the Dark Crystal into the Small Mushroom and yell " + get(.invocation$, "smwmushroom") +".\""; + mesq l("We will start with an easy one. I will teach you how to summon a wicked mushroom."); + mesq l("The spell consumes a Small Mushroom and a Dark Crystal. Shove the Dark Crystal into the Small Mushroom and yell %s."); next; - mes "\"A wicked mushroom will appear to fight for you.\""; + mesq l("A wicked mushroom will appear to fight for you. Usually."); OrumQuest = 37; + learnskill SKILL_HELORP; goto L_close; L_ToxicDart: - mes "[Waric]"; - mes "\"Welcome back, apprentice.\""; - mes "\"Are you read for another spell?\""; + mesn; + mesq l("Welcome back, apprentice."); + mesq l("Are you read for another spell?"); menu "No, I still have to practice the first one.", L_close, "Yes. Show me some more!", L_Next4; L_Next4: - mes "[Waric]"; + mesn; mes "\"Very well. This spell is more complex than the last one. It is called toxic dart. Only your peers are susceptible to the dart's poison. If you hit an animal the dart will injure it, but the poison will not work.\""; next; mes "\"You have to use two roots for this spell. First you have to take one root and break off all the root hair. Shape it into a stick, if you will. Then put it on top of the other root and form an arrow-like structure.\""; @@ -241,14 +242,14 @@ L_Next4: L_Snakes: mes "Waric nods at you."; - mes "[Waric]"; + mesn; mes "\"Have you practiced enough?\""; menu "Yes, I'm an outstanding Dark Mage!", L_Next5, "No. I'm too lazy.", L_ComeBackLater; L_Next5: - mes "[Waric]"; + mesn; mes "\"Very well. I shall teach you another spell.\""; mes "\"This one is so complex that I have to show it to you before explaining it further. Bring me a snake egg and a root.\""; next; @@ -258,58 +259,59 @@ L_Next5: L_SnakesIngredients: OrumQuest = 39; - mes "[Waric]"; + mesn; mes "\"Did you bring one Dark Crystal and a Snake Egg?\""; menu "Yes, I have what you want.", L_Next6, "No, I need more time.", L_NoItem; L_Next6: - if ((countitem("DarkCrystal") < 0) - || (countitem("SnakeEgg") < 0)) + if ((countitem(DarkCrystal) < 0) + || (countitem(SnakeEgg) < 0)) goto L_NoItem; - delitem "DarkCrystal", 1; - delitem "SnakeEgg", 1; - mes "[Waric]"; - mes "\"Observe!\""; + mesn; + mesq l("Observe!"); next; - mes "The wizard takes the crystal and the egg, mumbling something you don't understand. Suddenly, he throws the egg into the air and throws the crystal right through it midair."; + mesc l("The wizard takes the crystal and the egg, mumbling something you don't understand. Suddenly, he throws the egg into the air and throws the crystal right through it midair."); next; - mes "The Egg cracks open and a living snake comes out of the egg."; + mesc l("The Egg cracks open and a living snake comes out of the egg."); next; - monster "017-4", 217,36, "Evil", 1010, 1; - mes "The wizard looks at you, his eyes flashing, and laughs diabolically."; + delitem DarkCrystal, 1; + delitem SnakeEgg, 1; OrumQuest = 40; + monster "017-4", 217,36, "Evil", Snake, 1; + mesc l("The wizard looks at you, his eyes flashing, and laughs diabolically."); goto L_close; L_SnakesSpell: - mes "[Waric]"; - mes "\"Did you see how this spell is cast?\""; + mesn; + mesq l("Did you see how this spell is cast?"); menu "Yes. What did you mumble?", L_Next7, "No. Could you show me again?", L_SnakesAgain; L_Next7: - mes "[Waric]"; - mes "\"I said " + get(.invocation$, "summon-snakes") + ".\""; - mes "\"Have fun with those spells and use them to cause hate, anger and death.\""; + mesn; + mesq l("I said %s.", b("Halhiss")); + mesq l("Have fun with those spells and use them to cause hate, anger and death."); OrumQuest = 41; + learnskill SKILL_HALHISS; goto L_close; L_SnakesAgain: - mes "[Waric]"; - mes "\"Do you really want me to show you the spell again? You will have to bring new ingredients.\""; + mesn; + mesq l("Do you really want me to show you the spell again? You will have to bring new ingredients."); menu "No.", L_SnakesSpell, "Yes.", L_SnakesIngredients; L_ComeBackLater: - mes "[Waric]"; - mes "\"Then come back later.\""; + mesn; + mesq l("Then come back later."); goto L_close; L_MoreMagic: - mes "[Waric]"; + mesn; mes "\"Hello, apprentice.\""; mes "\"You must practice more! I will teach you more spells once you have mastered the ones I have already demonstrated.\""; next; @@ -318,37 +320,37 @@ L_MoreMagic: "Thanks, master. I will come back later", L_close; L_Next8: - mes "[Waric]"; - mes "\"Yes, of course.\""; - mes "\"To summon the snakes use " + get(.invocation$, "summon-snakes") + ".\""; - mes "\"Say " + get(.invocation$, "toxic-dart") + " to make your roots into toxic darts.\""; - mes "\"And the first spell, to summon wicked mushrooms, is " + get(.invocation$, "summon-wickedmushroom") + ".\""; + mesn; + mesq l("Yes, of course."); + mesq l("To summon the snakes use %s.", b("Halhiss")); + mesq l("Say %s to make your roots into toxic darts.", b("Phlex")); + mesq l("And the first spell, to summon wicked mushrooms, is %s.", b("Helorp")); next; - mes "\"Now leave. Spread chaos with the spells I have taught you!\""; + mesq l("Now leave. Spread chaos with the spells I have taught you!"); goto L_close; L_Undecided: - mes "[Waric]"; - mes "\"Well, I could. However, I am not sure you are trustworthy.\""; + mesn; + mesq l("Well, I could. However, I am not sure you are trustworthy."); next; - mes "\"How do I know you will not run off to Sagatha with what I would be teaching you?\""; + mesq l("How do I know you will not run off to Sagatha with what I would be teaching you?"); goto L_close; L_Sagatha: - mes "[Waric]"; - mes "\"You are already a student of Sagatha. I will not teach you anything!\""; + mesn; + mesq l("You are already a student of Sagatha. I will not teach you anything!"); goto L_close; L_Banished: - mes "The wizard looks at you with despise."; - mes "[Waric]"; - mes "\"How did you...\""; + mesc l("The wizard looks at you with despise."); + mesn; + mesq l("How did you..."); heal -Hp, 0; goto L_close; L_NoItem: - mes "[Waric]"; - mes "\"Why are you wasting my time? Come back when you got everything I need.\""; + mesn; + mesq l("Why are you wasting my time? Come back when you got everything I need."); goto L_close; L_close: diff --git a/npc/magic/config.txt b/npc/magic/config.txt index 89f9dd25..5a73317c 100644 --- a/npc/magic/config.txt +++ b/npc/magic/config.txt @@ -157,6 +157,8 @@ function script SK_summon { .@mex=getarg(2, 1); .@sum=getarg(3, true); if ($@GM_OVERRIDE || debug) debugmes "Skill "+@skillId+" Lv "+@skillLv; + if (ispcdead()) + return; if (rand2(10) < abizit()) { // Summon Magic (with magic level bonus) diff --git a/npc/magic/final.txt b/npc/magic/final.txt index 92fb65a4..e7d92da3 100644 --- a/npc/magic/final.txt +++ b/npc/magic/final.txt @@ -54,6 +54,14 @@ function script HUB_SkillInvoke { // Level 2 case SKILL_INMA: SK_Inma(); break; + case SKILL_KALAKARENK: + case SKILL_KALBOO: + case SKILL_KALGINA: + case SKILL_KALRENK: + SK_SummonLv2(); break; + case SKILL_HALHISS: + case SKILL_HELORP: + SK_SummonLv2(); break; // Level 3 // Level 4 // Level 5 @@ -84,83 +92,6 @@ function script HUB_SkillInvoke { GetManaExp(TMW2_FIREBALL, 3); break; //////////////////////////////// - // XXX: Holy Class - // (Single DPS + AOE) - case TMW2_NAPALMBEAT: - .@PW=35+(5*@skillLv); - .@dmg=AdjustSpellpower(.@PW); - .@RG=2+(@skillLv/3); - harm(@skillTarget, .@dmg/10, HARM_MAGI, Ele_Holy); - areaharm(@skillTarget, .@RG, .@dmg, HARM_MAGI, Ele_Holy); - GetManaExp(TMW2_HOLYLIGHT, 1); - break; - case TMW2_HOLYLIGHT: - .@PW=125+(25*@skillLv); - .@dmg=AdjustSpellpower(.@PW); - harm(@skillTarget, .@dmg, HARM_MAGI, Ele_Holy); - areaharm(@skillTarget, 1, .@dmg/5, HARM_MAGI, Ele_Holy); - GetManaExp(TMW2_HOLYLIGHT, 2); - break; - case TMW2_JUDGMENT: - .@PW=250+(50*@skillLv); - .@SPW=60+(15*@skillLv); - .@dmg=AdjustSpellpower(.@PW); - .@dsub=AdjustSpellpower(.@SPW); - .@RG=3+(@skillLv/5); - harm(@skillTarget, .@dmg, HARM_MAGI, Ele_Holy); - areaharm(@skillTarget, .@RG, .@dsub, HARM_MAGI, Ele_Holy); - GetManaExp(TMW2_HOLYLIGHT, 3); - break; - //////////////////////////////// - // XXX: Wind Class - // (Smaller cooldown than others) - case TMW2_MAGICSTRIKE: - .@PW=125+(25*@skillLv); - .@dmg=AdjustSpellpower(.@PW); - harm(@skillTarget, .@dmg, HARM_MAGI, Ele_Wind); - GetManaExp(TMW2_LIGHTNINGBOLT, 1); - break; - case TMW2_LIGHTNINGBOLT: - .@PW=150+(50*@skillLv); - .@dmg=AdjustSpellpower(.@PW); - harm(@skillTarget, .@dmg, HARM_MAGI, Ele_Wind); - GetManaExp(TMW2_LIGHTNINGBOLT, 2); - break; - case TMW2_TEMPEST: - .@PW=125+(25*@skillLv); - .@dmg=AdjustSpellpower(.@PW); - .@RG=2+(@skillLv/5); - areaharm(@skillTarget, .@RG, .@dmg, HARM_MAGI, Ele_Wind); - GetManaExp(TMW2_LIGHTNINGBOLT, 3); - break; - //////////////////////////////// - // XXX: Ice Class - // (May freeze the targets) - case TMW2_FROSTDIVER: - .@PW=80+(10*@skillLv); - // 22% chance, 2.5s - harm(@skillTarget, AdjustSpellpower(.@PW), HARM_MAGI, Ele_Water); - sc_start SC_FREEZE, 2500, 1, 2200, SCFLAG_NONE, @skillTarget; - GetManaExp(TMW2_NILFHEIM, 1); - break; - case TMW2_FROSTNOVA: - .@PW=80+(10*@skillLv); - .@RG=2+(@skillLv/5); - // 18% chance, 3s, 3x3 radius - areaharm(@skillTarget, .@RG, AdjustSpellpower(.@PW), HARM_MAGI, Ele_Water); - areasc(.@RG, 3000, SC_FREEZE, BL_MOB|BL_PC|BL_HOM|BL_MER, 1, "filter_hostile", @skillTarget, 1800); - GetManaExp(TMW2_NILFHEIM, 2); - break; - case TMW2_NILFHEIM: - // Nilfheim cast on self? - .@PW=80+(10*@skillLv); - .@RG=4+(@skillLv/5); - areaharm(getcharid(3), .@RG*3/2, AdjustSpellpower(.@PW), HARM_MAGI, Ele_Water); - areasc(.@RG, 15000, SC_FREEZE, BL_PC | BL_MOB | BL_MER | BL_HOM, 1, "filter_hostile"); - // Maybe filter_notme() would work better, indeed - GetManaExp(TMW2_NILFHEIM, 3); - break; - //////////////////////////////// // XXX: Earth Class // DEF Effects at Gaia Break, more expensive case TMW2_METEORSTRIKE: @@ -230,73 +161,6 @@ function script HUB_SkillInvoke { areaharm(@skillTarget, .@RG, .@dmg, HARM_PHYS, Ele_Neutral); GetManaExp(@skillId, 1); break; - //////////////////////////////// - // XXX: Brawling Class - case TMW2_BRAWLING: - // 75x3 = 225 - .@PW=70+(5*@skillLv); - // Using a shield, so power is halved - if (getequipid(EQI_HAND_L) > 0) - .@PW=.@PW/2; - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Neutral); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Neutral); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Neutral); - break; - case TMW2_BEARSTRIKE: - // 60x5 = 300 - .@PW=55+(5*@skillLv); - // Using a shield, so power is halved - if (getequipid(EQI_HAND_L) > 0) - .@PW=.@PW/2; - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Neutral); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Neutral); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Neutral); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Neutral); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Neutral); - break; - case TMW2_ALLINONE: - // 45x8 = 360 - .@PW=40+(5*@skillLv); - // Using a shield, so power is halved - if (getequipid(EQI_HAND_L) > 0) - .@PW=.@PW/2; - //harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Neutral); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Fire); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Water); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Earth); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Wind); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Holy); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Shadow); - sleep2(10); - harm(@skillTarget, AdjustAttackpower(.@PW), HARM_PHYS, Ele_Ghost); - sleep2(10); - // The main elemental-less blast hits all in same square, - // and also hits behind (and on your square) - rectharm(@skillTarget, 0, 1, AdjustAttackpower(.@PW/2), HARM_PHYS, Ele_Neutral); - break; - - //////////////////////////////// - // CLASS_OTHER - case TMW2_PARUM: - SK_parum(); - break; - case TMW2_DEMURE: - SK_Demure(); - break; - case TMW2_DRAGOKIN: - SK_Dragokin(); - break; // Summons which never fail case TMW2_ZARKOR: alignment_cansummon(); diff --git a/npc/magic/level1-grow-plants.txt b/npc/magic/level1-grow-plants.txt index c3b21bad..d15f1276 100644 --- a/npc/magic/level1-grow-plants.txt +++ b/npc/magic/level1-grow-plants.txt @@ -15,6 +15,7 @@ function script SK_GrowPlants { .@it = GambogeHerb; .@mobId = GambogePlant; break; case SKILL_MODRILAX: .@it = MauveHerb; .@mobId = MauvePlant; break; + default: return; } // Consume reagents delitem Root, 1; diff --git a/npc/magic/level2-summon-monsters.txt b/npc/magic/level2-summon-monsters.txt new file mode 100644 index 00000000..9c28e639 --- /dev/null +++ b/npc/magic/level2-summon-monsters.txt @@ -0,0 +1,53 @@ +// The Mana World script +// Author: Jesusalva +// +// Magic Script: Multiple (Level 1) +// School: Astral/Dark 2 + +// SK_SummonLv2() +function script SK_SummonLv2 { + // Setup + switch (@skillId) { + case SKILL_KALAKARENK: + .@it = WhiteFur; .@mobId = Fluffy; .@am = 3; .@cl = Root; + .@fx1 = FX_MAGIC_FLUFFY_CAST; .@fx2 = FX_MAGIC_FLUFFY_SPAWN; break; + case SKILL_KALBOO: + .@it = MoubooFigurine; .@mobId = Mouboo; .@am = 4; .@cl = Root; + .@fx1 = FX_MAGIC_MOUBOO_CAST; .@fx2 = FX_MAGIC_MOUBOO_SPAWN; break; + case SKILL_KALGINA: + .@it = PinkAntenna; .@mobId = Pinkie; .@am = 2; .@cl = Root; + .@fx1 = FX_MAGIC_PINKY_CAST; .@fx2 = FX_MAGIC_PINKY_SPAWN; break; + case SKILL_KALRENK: + .@it = HardSpike; .@mobId = SpikyMushroom; .@am = 2; .@cl = Root; + .@fx1 = FX_MAGIC_SPIKY_CAST; .@fx2 = FX_MAGIC_SPIKY_SPAWN; break; + + // Should non-astral magic be here? + case SKILL_HALHISS: + .@it = SnakeEgg; .@mobId = Snake; .@am = 4; .@cl = DarkCrystal; + .@fx1 = FX_MAGIC_SNAKE_CAST; .@fx2 = FX_MAGIC_SNAKE_SPAWN; break; + case SKILL_HELORP: + .@it = SmallMushroom; .@am = 3; .@cl = DarkCrystal; + .@mobId = any(WickedMushroom, WickedMushroom, WickedMushroom, + WickedMushroom, WickedMushroom, WickedMushroom, + EvilMushroom, Moonshroom, Moonshroom, Moonshroom); + .@fx1 = FX_MAGIC_WICKED_CAST; .@fx2 = FX_MAGIC_WICKED_SPAWN; break; + + default: return; + } + // Consume reagents + delitem .@cl, 1; + delitem .@it, 1; + // Estimate the cast time + if (.@cl == Root) + .@ct = 400+rand2(1001-getskilllv(MAGIC_SKILL_ASTRAL)*100); + else if (.@cl == DarkCrystal) + .@ct = 400+rand2(1001-getskilllv(MAGIC_SKILL_DARK)*100); + // Summon the monsters (or fail trying to) + specialeffect(.@fx1, AREA, getcharid(3)); + sleep2(.@ct); + SK_summon(.@mobId, .@am, 2); + specialeffect(.@fx2, AREA, getcharid(3)); + return; +} + + diff --git a/npc/scripts.conf b/npc/scripts.conf index a625b547..b2535a06 100644 --- a/npc/scripts.conf +++ b/npc/scripts.conf @@ -74,6 +74,7 @@ "npc/magic/level1-grow-plants.txt", "npc/magic/level1-lesser-heal.txt", "npc/magic/level2-lay-on-hands.txt", +"npc/magic/level2-summon-monsters.txt", "npc/magic/final.txt", // Commands -- cgit v1.2.3-70-g09d2 From eb9b35cb6090c65ca8ee8c27c5f3888c06784f3a Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Thu, 15 Apr 2021 10:39:01 -0300 Subject: Update the learning references for betsanc and asorm --- db/pre-re/skill_db.conf | 16 ++++++++++-- npc/006-1/spirit.txt | 65 +++++++++++++++++++++++++------------------------ npc/013-1/sagatha.txt | 8 +++--- npc/commands/debug.txt | 6 +++-- 4 files changed, 55 insertions(+), 40 deletions(-) (limited to 'npc/013-1/sagatha.txt') diff --git a/db/pre-re/skill_db.conf b/db/pre-re/skill_db.conf index d8b1323a..b312ed22 100644 --- a/db/pre-re/skill_db.conf +++ b/db/pre-re/skill_db.conf @@ -38960,8 +38960,14 @@ skill_db: ( Name: "SKILL_BETSANC" Description: "Betsanc" MaxLevel: 9 + Range: 9 SkillType: { - Self: true + Friend: true + } + Hit: "BDT_SKILL" + AttackType: "Magic" + DamageType: { + NoDamage: true } SkillInfo: { Quest: true @@ -38979,8 +38985,14 @@ skill_db: ( Name: "SKILL_ASORM" Description: "Asorm" MaxLevel: 9 + Range: 9 SkillType: { - Self: true + Friend: true + } + Hit: "BDT_SKILL" + AttackType: "Magic" + DamageType: { + NoDamage: true } SkillInfo: { Quest: true diff --git a/npc/006-1/spirit.txt b/npc/006-1/spirit.txt index 896033fc..1cb0aa74 100644 --- a/npc/006-1/spirit.txt +++ b/npc/006-1/spirit.txt @@ -45,14 +45,14 @@ L_Next: "Whatever it is, I'm not interested.", L_close; L_Next1: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"I'm an earth spirit; my name isn't important... all that matters is that I like you, and that I will help you become a powerful wizard if you help me. Just a fair deal, no more than that...\""; next; MAGIC_FLAGS = MAGIC_FLAGS | MFLAG_KNOWS_IMP; goto L_Main; L_wb: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"It's excellent to see you again!\""; next; goto L_Main; @@ -65,13 +65,13 @@ L_Main: "Goodbye!", L_close; L_Q_trapped: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Oh, a wicked witch grew jealous of my power and locked me up in this well.\""; next; goto L_Main; L_Q: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Stop bothering me with your questions, will you? I'm trying to make you a powerful wizard, after all!\""; next; goto L_Main; @@ -82,10 +82,10 @@ L_Q_magic: if (@Q_status == @Q_STATUS_STUDENT1) goto L_Q_magic_3; if (@Q_status == @Q_STATUS_STUDENT2) goto L_Q_magic_4; - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Good, good... that's the right attitude! Yes, I can teach you magic, but first you must prove that you are worthy to be my student!\""; next; - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"North-east of here sits and old, dead tree. Well, not completely dead, not yet, but almost. It's nothing special. Well, maybe a little, but not really. I want you to cut off one of its branches.\""; next; menu @@ -94,7 +94,7 @@ L_Q_magic: "Why that particular tree?", L_Next2; L_Next2: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Oh, you and your questions! Well, that tree was a druid once, so the branches contain a bit of its lifeforce. And that's useful.\""; next; menu @@ -103,10 +103,10 @@ L_Next2: "Isn't that like cutting off someone's arm?", L_Next3; L_Next3: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Oooh... now come on! Don't be so sentimental. He turned himself into a tree, he can hardly expect everyone to leave him alone.\""; next; - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Who knows if he can even feel anything anymore? I'm sure he can't, being wooden and all. Besides, it's only a measly tree. Not like I'm asking you to cut him down!.\""; next; menu @@ -114,7 +114,7 @@ L_Next3: "Alright, that makes sense.", L_Q_tree_ok; L_Q_tree_ok: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Good, good, good! Yes, that will be very good! So, come back when you have the branch. Oh, and bring 100,000 GP, too, as an enrollment fee.\""; @Q_status = @Q_STATUS_ONQUEST; callsub S_Update_Var; @@ -123,7 +123,7 @@ L_Q_tree_ok: goto L_Main; L_Q_magic_1: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Yes, yes, if you bring me the branch and the money, then I will!\""; next; menu @@ -140,10 +140,10 @@ L_Next4: Zeny = Zeny - 100000; delitem "DruidTreeBranch", 1; - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "Following the earth sprite's instructions, you throw branch and GP into the well."; next; - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Well done, very well done! Consider yourself my student now.\""; @SUP_xp = 5000; @SUP_lvl = 2; @@ -162,7 +162,7 @@ L_Q_magic_finish: goto L_Main; L_Q_magic_2: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Yes, of course! For just 20,000 GP I will teach you your first spell!\""; next; menu @@ -173,15 +173,15 @@ L_Next5: if (Zeny < 20000) goto L_No20k; Zeny = Zeny - 20000; - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Kekeke... excellent! Yes, here goes your first spell, the flying backpack! If you are overloaded, it will take the load off your shoulders.\""; next; - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Take a cocoon, living or dead, and suffuse it in magic. Whisper '" + get(.invocation$, "flying-backpack") + "', and feel it float!\""; goto L_Q_magic_finish; L_Q_magic_3: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"But yes, yes! Only 20,000 GP, once again, and I will teach you a far more useful spell!\""; next; menu @@ -191,70 +191,71 @@ L_Q_magic_3: L_Next6: if (Zeny < 20000) goto L_No20k; Zeny = Zeny - 20000; - mes "[Earth Spirit]"; - mes "\"Yeees, good! This one is a protection spell, making your skin harder. You need a hard spike for it, though. Hold that spike in your hands, and focus on it.\""; + mesn l("Earth Spirit"); + mesq l("Yeees, good! This one is a protection spell, making your skin harder. You need a hard spike for it, though. Hold that spike in your hands, and focus on it."); next; - mes "[Earth Spirit]"; - mes "\"Next, say '" + get(.invocation$, "protect") + "', and feel your skin grow rigid! Very useful against stings and stabs and pokes and pricks and that sort of stuff.\""; + mesn l("Earth Spirit"); + mesq l("Next, say '%s', and feel your skin grow rigid! Very useful against stings and stabs and pokes and pricks and that sort of stuff. Lowers attack speed and only works on yourself, party, or guild allies, though.", b("betsanc")); + learnskill SKILL_BETSANC; goto L_Q_magic_finish; L_Q_magic_4: - mes "[Earth Spirit]"; - mes "\"Naah, you're too weak now! Come back later when you have grown!\""; + mesn l("Earth Spirit"); + mesq l("Naah, you're too weak now! Come back later when you have grown!"); next; goto L_Main; L_No20k: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"You can't pay me 20,000 if you don't have that much!\""; next; goto L_Main; L_Q_tree_none: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Where is your branch?\""; next; goto L_Main; L_Q_tree_dry: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"That won't do. This branch is completely dead; you'll have to get another.\""; next; goto L_Main; L_Q_tree_nomoney: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"No, you don't have enough money! Come back when you have 100,000.\""; next; goto L_Main; L_Q_tree_howmuch: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"It's only 100,000 GP to become my student.\""; next; goto L_Main; L_Q_tree_how: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Oh... right, the tree might be protected. Only a bone knife will cut that. No idea where you can find one, but I'm sure you will manage!\""; next; goto L_Main; L_Q_tree_where: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"North-east of here.\""; next; goto L_Main; L_Q_tree_what: - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); mes "\"Just some silly druid who turned himself into a tree; nothing important.\""; next; goto L_Main; L_silly_close: if (MAGIC_FLAGS & MFLAG_KNOWS_IMP) - mes "[Earth Spirit]"; + mesn l("Earth Spirit"); if (!(MAGIC_FLAGS & MFLAG_KNOWS_IMP)) mes "[Well]"; mes "\"Fool.\""; diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt index 460dcb7f..12251532 100644 --- a/npc/013-1/sagatha.txt +++ b/npc/013-1/sagatha.txt @@ -280,8 +280,8 @@ L_Teach_A10: mesq l("To protect against others' magic, take a small mushroom from a shady place. Mushrooms draw things out of the earth. Rub your mushroom into pieces between your hands."); next; mesn .@n$; - mesq l("Then say %s and let the mushroom's power take over.", b("betsanc")); - learnskill EVOL_PHYSICAL_SHIELD, 1; + mesq l("Then say %s and let the mushroom's power take over. It only works on yourself, party or guild allies.", b("asorm")); + learnskill SKILL_ASORM; goto L_practice; L_Teach_A11: @@ -309,10 +309,10 @@ L_Teach_N11: goto L_Teach_noexp; mesn .@n$; mesq l("You can harden your skin with a hard spike. Hold it in your hands and speak '%s', then draw its hardness into your skin, or the skin of someone's else.", b("betsanc")); - learnskill EVOL_PHYSICAL_SHIELD; + learnskill SKILL_BETSANC; next; mesn .@n$; - mesq l("You can also remove this spell from yourself if you say '" + get(.invocation$, "antiprotect") + "'."); + mesq l("Keep in mind this spell only works on yourself or party/guild companions. It will reduce your attack speed so keep this in mind."); goto L_practice; L_Teach_noexp: diff --git a/npc/commands/debug.txt b/npc/commands/debug.txt index 9c8bcbb0..c9a4f37e 100644 --- a/npc/commands/debug.txt +++ b/npc/commands/debug.txt @@ -455,7 +455,6 @@ L_AddAll: updateskill SKILL_MAGIC_DARK, 5; // Real skills - learnskill EVOL_PHYSICAL_SHIELD, 1; learnskill SKILL_CONFRINGO, 1; learnskill SKILL_ABIZIT, 1; learnskill SKILL_MONSTERINFO, 1; @@ -474,6 +473,8 @@ L_AddAll: learnskill SKILL_HALHISS, 1; learnskill SKILL_HELORP, 1; learnskill SKILL_KAFLOSH, 1; + learnskill SKILL_BETSANC, 1; + learnskill SKILL_ASORM, 1; resetstatus; BaseLevel = 99; mes "All skills added to their maximum level."; @@ -501,9 +502,10 @@ L_ResetAll: updateskill SKILL_MAGIC_NATURE, 0; updateskill SKILL_MAGIC_ASTRAL, 0; updateskill SKILL_MAGIC_DARK, 0; + learnskill SKILL_BETSANC, 0; + learnskill SKILL_ASORM, 0; // Real skills - updateskill EVOL_PHYSICAL_SHIELD, 0; updateskill SKILL_CONFRINGO, 0; updateskill SKILL_ABIZIT, 0; updateskill SKILL_MONSTERINFO, 0; -- cgit v1.2.3-70-g09d2 From bd9d7c6142986a30f6fcd355efe22704f5bf4be4 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 17 Apr 2021 15:36:27 -0300 Subject: Update a bit Sagatha's code --- npc/013-1/sagatha.txt | 45 +++++++++++++++------------------------------ 1 file changed, 15 insertions(+), 30 deletions(-) (limited to 'npc/013-1/sagatha.txt') diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt index 12251532..786da773 100644 --- a/npc/013-1/sagatha.txt +++ b/npc/013-1/sagatha.txt @@ -1,46 +1,31 @@ function script QuestSagathaHappy { - @unhappiness = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; - if (@unhappiness < @value) - goto L_zero; + .@value = getarg(0, @value); + .@unhappiness = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; + if (.@unhappiness < .@value) + .@unhappiness = 0; - @unhappiness = @unhappiness - @value; - goto L_write; + .@unhappiness = .@unhappiness - .@value; -L_zero: - @unhappiness = 0; - goto L_write; - -L_write: - QUEST_MAGIC = (QUEST_MAGIC & ~NIBBLE_3_MASK) | (@unhappiness << NIBBLE_3_SHIFT); + QUEST_MAGIC = (QUEST_MAGIC & ~NIBBLE_3_MASK) | (.@unhappiness << NIBBLE_3_SHIFT); return; } function script QuestSagathaAnnoy { - @unhappiness = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; - if ((@unhappiness + @value) > 15) - goto L_max; - - @unhappiness = @unhappiness + @value; - goto L_write; + .@value = getarg(0, @value); + .@unhappiness = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; + if ((.@unhappiness + .@value) > 15) + .@unhappiness = 15; -L_max: - @unhappiness = 15; - goto L_write; - -L_write: - QUEST_MAGIC = (QUEST_MAGIC & ~NIBBLE_3_MASK) | (@unhappiness << NIBBLE_3_SHIFT); + .@unhappiness = .@unhappiness + .@value; + QUEST_MAGIC = (QUEST_MAGIC & ~NIBBLE_3_MASK) | (.@unhappiness << NIBBLE_3_SHIFT); return; } function script SagathaStatus { - if (!isequippedcnt(MoubooHead, FluffyHat)) - goto L_Next; - @value = 15; - callfunc "QuestSagathaAnnoy"; - goto L_Next; + if (isequippedcnt(MoubooHead, FluffyHat)) + QuestSagathaAnnoy(15); -L_Next: @mexp = MAGIC_EXP; @has_magic = getskilllv(SKILL_MAGIC); @evil = 0; @@ -65,7 +50,7 @@ L_Next: } 013-1,131,24,0 script Sagatha#_M NPC167,{ - callfunc "SagathaStatus"; + SagathaStatus(); @Q_MASK = NIBBLE_4_MASK | NIBBLE_5_MASK; @Q_SHIFT = NIBBLE_4_SHIFT; -- cgit v1.2.3-70-g09d2 From 14f7af0b7b3839f0e1b35c31bf3bd17e70cf366f Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 17 Apr 2021 16:07:04 -0300 Subject: Refactor Sagatha functions. Add shear spell (reusing ML code) --- db/pre-re/skill_db.conf | 23 +++++++++++ db/pre-re/skill_tree.conf | 1 + npc/002-1/elanore.txt | 12 ------ npc/013-1/sagatha.txt | 27 ++----------- npc/functions/global_event_handler.txt | 2 +- npc/functions/mob_points.txt | 72 +++++++++++++--------------------- npc/functions/quests.txt | 37 +++++++++++++++++ npc/magic/final.txt | 2 + npc/magic/level2-shear.txt | 54 +++++++++++++++++++++++++ npc/scripts.conf | 2 + 10 files changed, 151 insertions(+), 81 deletions(-) create mode 100644 npc/functions/quests.txt create mode 100644 npc/magic/level2-shear.txt (limited to 'npc/013-1/sagatha.txt') diff --git a/db/pre-re/skill_db.conf b/db/pre-re/skill_db.conf index 54a9a278..b9d6eb2c 100644 --- a/db/pre-re/skill_db.conf +++ b/db/pre-re/skill_db.conf @@ -39331,6 +39331,29 @@ skill_db: ( } } }, +{ + Id: 20055 + Name: "SKILL_CHIPCHIP" + Description: "Chipchip" + MaxLevel: 10 + Range: 1 + SkillType: { + Enemy: true + } + SkillInfo: { + Quest: true + } + Hit: "BDT_SKILL" + AttackType: "Magic" + Element: "Ele_Neutral" + DamageType: { + NoDamage: true + } + CoolDown: 1000 + Requirements: { + SPCost: 23 + } +}, // FlyingBackpack(?) Shear ) diff --git a/db/pre-re/skill_tree.conf b/db/pre-re/skill_tree.conf index 822f5e32..2f08134b 100644 --- a/db/pre-re/skill_tree.conf +++ b/db/pre-re/skill_tree.conf @@ -81,6 +81,7 @@ Talpan: { // Level 2 SKILL_INMA: 9 + SKILL_CHIPCHIP: 9 SKILL_KALAKARENK: 9 SKILL_KALBOO: 9 SKILL_KALGINA: 9 diff --git a/npc/002-1/elanore.txt b/npc/002-1/elanore.txt index 67018a3f..cc9ce146 100644 --- a/npc/002-1/elanore.txt +++ b/npc/002-1/elanore.txt @@ -1,16 +1,4 @@ -function script elanore_decrease_exp { - .@heal_exp = getq2(MagicQuest_Healing); - - if (.@heal_exp < 8) - .@heal_exp = 0; - else - .@heal_exp -= 8; - - setq2(MagicQuest_Healing, .@heal_exp); - return; -} - 002-1,75,62,0 script Elanore#_M NPC108,{ @has_magic = getskilllv(SKILL_MAGIC); diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt index 786da773..702e261c 100644 --- a/npc/013-1/sagatha.txt +++ b/npc/013-1/sagatha.txt @@ -1,26 +1,4 @@ - -function script QuestSagathaHappy { - .@value = getarg(0, @value); - .@unhappiness = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; - if (.@unhappiness < .@value) - .@unhappiness = 0; - - .@unhappiness = .@unhappiness - .@value; - - QUEST_MAGIC = (QUEST_MAGIC & ~NIBBLE_3_MASK) | (.@unhappiness << NIBBLE_3_SHIFT); - return; -} - -function script QuestSagathaAnnoy { - .@value = getarg(0, @value); - .@unhappiness = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; - if ((.@unhappiness + .@value) > 15) - .@unhappiness = 15; - - .@unhappiness = .@unhappiness + .@value; - QUEST_MAGIC = (QUEST_MAGIC & ~NIBBLE_3_MASK) | (.@unhappiness << NIBBLE_3_SHIFT); - return; -} +// (C) The Mana World Developers function script SagathaStatus { if (isequippedcnt(MoubooHead, FluffyHat)) @@ -242,7 +220,8 @@ L_Teach_N14: mes "\"Some forest creatures sometimes overgrow their fur or hide. That makes them uncomfortable.\""; next; mesn .@n$; - mesq l("You can help them with shearing magic. Press your hands together and say '" + get(.invocation$, "shear") + "'. Then touch them with your hands, and brush off any excess."); + mesq l("You can help them with shearing magic. Press your hands together and say '%s'. Then touch them with your hands, and brush off any excess.", b("Chipchip")); + learnskill SKILL_CHIPCHIP; next; mesn .@n$; mesq l("The spell is strong, so you only need to do this once. Be careful not to cut them. Some things they shed are useful. Often they will leave them to you as a thank-you."); diff --git a/npc/functions/global_event_handler.txt b/npc/functions/global_event_handler.txt index e832623f..d0014b87 100644 --- a/npc/functions/global_event_handler.txt +++ b/npc/functions/global_event_handler.txt @@ -13,7 +13,7 @@ OnPCLoginEvent: end; OnPCKillEvent: - callfunc "elanore_decrease_exp"; // decrease heal exp for doing bad things + elanore_decrease_exp(); // decrease heal exp for doing bad things end; OnNPCKillEvent: diff --git a/npc/functions/mob_points.txt b/npc/functions/mob_points.txt index 2a39fbee..a9f6f1d4 100644 --- a/npc/functions/mob_points.txt +++ b/npc/functions/mob_points.txt @@ -48,50 +48,34 @@ function script MobPoints { callfunc("AddValonCntMask"); - if ((@mobId == 1003) || (@mobId == 1004) || (@mobId == 1009) || (@mobId == 1057) - || (@mobId == 1104) || (@mobId == 1105) || (@mobId == 1106) || (@mobId == 1107)) - goto L_Good; - - // Attitude adjustment for the witch (can we refactor this to another function? Not sure about max. recursion depth) - - @value = 0; - if (@mobId == 1018) - @value = 3; - - if (@mobId == 1020) - @value = 3; - if (@mobId == 1027) - @value = 3; - if (@mobId == 1028) - @value = 4; - if (@mobId == 1038) - @value = 2; - if (@mobId == 1094) - @value = 3; - if (@mobId == 1112) - @value = 3; - if (@mobId == 1113) - @value = 3; - - if (@value == 0) - goto L_Celestia; - - callfunc "QuestSagathaAnnoy"; - goto L_Celestia; - -L_Good: - @value = 1; - callfunc "QuestSagathaHappy"; - goto L_Celestia; - -L_Celestia: - if (QL_CELESTIA < 5 || QL_CELESTIA >= 205 || @mobId != 1072) goto L_Return; - QL_CELESTIA = QL_CELESTIA + 1; - if (QL_CELESTIA == 205) - message strcharinfo(0), "Yeti : ##3This should be enough yetis killed to please Celestia."; - goto L_Return; + // Attitude adjustment for Sagatha + switch (@mobId) { + case 1018: + case 1020: + case 1027: + case 1094: + case 1112: + case 1113: + QuestSagathaAnnoy(3); break; + case 1028: + QuestSagathaAnnoy(4); break; + case 1038: + QuestSagathaAnnoy(2); break; + case 1003: + case 1004: + case 1009: + case 1057: + case 1104: + case 1105: + case 1106: + case 1107: + QuestSagathaHappy(1); break; + } -L_Return: - @value = 0; + if (QL_CELESTIA >= 5 && QL_CELESTIA < 205 && @mobId == Yeti) { + QL_CELESTIA = QL_CELESTIA + 1; + if (QL_CELESTIA == 205) + message strcharinfo(0), "Yeti : ##3This should be enough yetis killed to please Celestia."; + } return; } diff --git a/npc/functions/quests.txt b/npc/functions/quests.txt new file mode 100644 index 00000000..3f0c40ef --- /dev/null +++ b/npc/functions/quests.txt @@ -0,0 +1,37 @@ +// The Mana World quest functions script + +function script QuestSagathaHappy { + .@value = getarg(0, @value); + .@unhappiness = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; + if (.@unhappiness < .@value) + .@unhappiness = 0; + + .@unhappiness = .@unhappiness - .@value; + + QUEST_MAGIC = (QUEST_MAGIC & ~NIBBLE_3_MASK) | (.@unhappiness << NIBBLE_3_SHIFT); + return; +} + +function script QuestSagathaAnnoy { + .@value = getarg(0, @value); + .@unhappiness = (QUEST_MAGIC & NIBBLE_3_MASK) >> NIBBLE_3_SHIFT; + if ((.@unhappiness + .@value) > 15) + .@unhappiness = 15; + + .@unhappiness = .@unhappiness + .@value; + QUEST_MAGIC = (QUEST_MAGIC & ~NIBBLE_3_MASK) | (.@unhappiness << NIBBLE_3_SHIFT); + return; +} + +function script elanore_decrease_exp { + .@heal_exp = getq2(MagicQuest_Healing); + + if (.@heal_exp < 8) + .@heal_exp = 0; + else + .@heal_exp -= 8; + + setq2(MagicQuest_Healing, .@heal_exp); + return; +} + diff --git a/npc/magic/final.txt b/npc/magic/final.txt index 78c171b6..87971b65 100644 --- a/npc/magic/final.txt +++ b/npc/magic/final.txt @@ -59,6 +59,8 @@ function script HUB_SkillInvoke { // Level 2 case SKILL_INMA: SK_Inma(); break; + case SKILL_CHIPCHIP: + SK_Shear(); break; case SKILL_KALAKARENK: case SKILL_KALBOO: case SKILL_KALGINA: diff --git a/npc/magic/level2-shear.txt b/npc/magic/level2-shear.txt new file mode 100644 index 00000000..f848b36d --- /dev/null +++ b/npc/magic/level2-shear.txt @@ -0,0 +1,54 @@ +// The Mana World script +// Author: Jesusalva +// +// Magic Script: SKILL_CHIPCHIP (Level 1) +// School: Nature 2 + +function script SK_Shear { + .@mobGD=getarg(0, @skillTarget); + if (.@mobGD <= 0) + return; + + // We only want monsters + if (getunittype(.@mobGD) != UNITTYPE_MOB) { + dispbottom l("This skill can only be used on monsters!"); + return; + } + + // Global data + setarray .@valid, Fluffy, EasterFluffy, SpikyMushroom, Mouboo, MauvePlant, CobaltPlant, GambogePlant, AlizarinPlant, Silkworm, Pinkie; + setarray .@prize, WhiteFur, WhiteFur, HardSpike, CottonCloth, MauveHerb, CoblatHerb, GambogeHerb, AlizarinHerb, SilkCocoon, PinkAntenna; + setarray .@score, 300, 300, 250, 175, 700, 700, 700, 700, 300, 180; + + // Specific data + .@mobID=getunitdata(.@mobGD, UDT_CLASS); + .@matk=AdjustSpellpower(40+(10*@skillLv)); + .@idx=array_find(.@valid, .@mobID); + + // Invalid target + if (.@idx < 0) return; + + // Not yet sheared + if (array_rfind(@shear, .@mobGD) < 0) { + array_push(@shear, @mobGD); + if (.@matk > .@score[.@idx]) + getitem .@prize[.@idx], 1; + } + + // Sagratha bonus + if (.@mobId == Fluffy || .@mobId == Mouboo || .@mobId == Pinkie) + QuestSagathaHappy(any(true, true, false)); + + // Special effect + specialeffect(FX_MAGIC_SHEAR_CAST, AREA, getcharid(3)); + specialeffect(FX_MAGIC_SHEAR_CAST, AREA, .@mobGD); + + // Truncate. + // We're saving the GID so it must be "big enough" + // But not too big so rfind() is not expensive + if (getarraysize(@study) > 99) { + deletearray(@study, 30); + } + return; +} + diff --git a/npc/scripts.conf b/npc/scripts.conf index c975d301..7f3980e6 100644 --- a/npc/scripts.conf +++ b/npc/scripts.conf @@ -19,6 +19,7 @@ "npc/functions/inc_sc_bonus.txt", "npc/commands/kami.txt", "npc/functions/filters.txt", +"npc/functions/quests.txt", // Main Functions "npc/functions/banker.txt", @@ -85,6 +86,7 @@ "npc/magic/level2-magic-knuckles.txt", "npc/magic/level2-protect.txt", "npc/magic/level2-rain.txt", +"npc/magic/level2-shear.txt", "npc/magic/level2-summon-monsters.txt", "npc/magic/level2-toxic-dart.txt", "npc/magic/final.txt", -- cgit v1.2.3-70-g09d2 From bfac8120f277238c03ff8cc55514a645f943a67c Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sat, 17 Apr 2021 16:56:10 -0300 Subject: Make plugh passive and call it a day. --- npc/006-1/spirit.txt | 5 +++-- npc/013-1/sagatha.txt | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) (limited to 'npc/013-1/sagatha.txt') diff --git a/npc/006-1/spirit.txt b/npc/006-1/spirit.txt index 1cb0aa74..21ea02c6 100644 --- a/npc/006-1/spirit.txt +++ b/npc/006-1/spirit.txt @@ -174,10 +174,11 @@ L_Next5: Zeny = Zeny - 20000; mesn l("Earth Spirit"); - mes "\"Kekeke... excellent! Yes, here goes your first spell, the flying backpack! If you are overloaded, it will take the load off your shoulders.\""; + mesq l("Kekeke... excellent! Yes, here goes your first spell, and it is even a passive: the flying backpack! If you are overloaded, it will take the load off your shoulders."); next; mesn l("Earth Spirit"); - mes "\"Take a cocoon, living or dead, and suffuse it in magic. Whisper '" + get(.invocation$, "flying-backpack") + "', and feel it float!\""; + mesq l("Take a cocoon, living or dead, and suffuse it in magic. Fell the %s, feel its lightness and feel it float! You no longer should be feeling overburned by your stolen goods, kekeke...", b("Plugh")); + learnskill ALL_INCCARRY; goto L_Q_magic_finish; L_Q_magic_3: diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt index 702e261c..a2f5ce7d 100644 --- a/npc/013-1/sagatha.txt +++ b/npc/013-1/sagatha.txt @@ -234,7 +234,8 @@ L_Teach_N10: mesq l("Next, a nature spell. Take a cocoon shell. Hold it in your hand. Feel its lightness."); next; mesn .@n$; - mesq l("Now whisper '" + get(.invocation$, "flying-backpack") + "', and if your backpack was pressing on you you should no longer feel it now."); + mesq l("Internalize this feeling, and if your backpack was pressing on you you should no longer feel it now. We call it %s and it is a passive spell.", b("Plugh")); + learnskill ALL_INCCARRY; goto L_practice; L_Teach_A10: -- cgit v1.2.3-70-g09d2 From 6521897eeec144f47a65c5855829544b892368e2 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Sun, 18 Apr 2021 15:49:32 -0300 Subject: Update all mapflags - Remove weird nosaves, add Event and MMO zones. Permanent rain to 070-1 close #11 --- db/pre-re/map_zone_db.conf | 109 ++++++++++++++++++++++++++++++++++++++++----- npc/000-1/exit.txt | 1 + npc/001-3/mapflags.txt | 2 +- npc/009-5/mapflags.txt | 1 + npc/009-6/mapflags.txt | 1 + npc/013-1/sagatha.txt | 2 +- npc/015-3/mapflags.txt | 1 + npc/025-4/mapflags.txt | 2 +- npc/027-6/mapflags.txt | 2 +- npc/027-7/mapflags.txt | 2 +- npc/027-8/mapflags.txt | 2 +- npc/028-1/mapflags.txt | 2 +- npc/028-3/mapflags.txt | 2 +- npc/029-2/mapflags.txt | 2 +- npc/029-3/mapflags.txt | 2 +- npc/030-4/mapflags.txt | 2 +- npc/031-4/mapflags.txt | 2 +- npc/051-1/mapflags.txt | 2 +- npc/051-3/mapflags.txt | 2 +- npc/052-1/mapflags.txt | 2 +- npc/052-2/mapflags.txt | 2 +- npc/070-1/_import.txt | 1 + npc/070-1/mapflags.txt | 1 + npc/099-5/_import.txt | 1 + npc/099-5/mapflag.txt | 2 + npc/botcheck/mapflags.txt | 3 +- npc/items/warpTowels.txt | 14 +++--- 27 files changed, 134 insertions(+), 33 deletions(-) create mode 100644 npc/070-1/mapflags.txt create mode 100644 npc/099-5/mapflag.txt (limited to 'npc/013-1/sagatha.txt') diff --git a/db/pre-re/map_zone_db.conf b/db/pre-re/map_zone_db.conf index 80f21c93..e5fdf71a 100644 --- a/db/pre-re/map_zone_db.conf +++ b/db/pre-re/map_zone_db.conf @@ -130,6 +130,7 @@ zones: ( ) }, { + /* Outside Zone is a mapflag alias */ name: "outside" disabled_skills: { @@ -139,6 +140,103 @@ zones: ( disabled_items: { } }, +{ + /* Event Zone is a mapflag alias */ + name: "Event" + + disabled_skills: { + } + + disabled_items: { + } + + mapflags: ( + "nopenalty", + "nosave 000-1,22,22", + "invincible_time_inc 5000", + ) + + /* "command:min-group-lv-to-override" e.g. "heal: 70" */ + disabled_commands: { + } + skill_damage_cap: { + } +}, +{ + /* Jail Zone is a special mapflag alias */ + name: "Jail" + + disabled_skills: { + TK_JUMPKICK: "PLAYER" + TK_HIGHJUMP: "PLAYER" + } + + disabled_items: { + } +}, +{ + /* MMO Zone is not the place for GMs to mess with */ + name: "MMO" + + disabled_skills: { + AL_WARP: "ALL" + AL_TELEPORT: "ALL" + WE_CALLPARTNER: "ALL" + WE_CALLPARENT: "ALL" + WE_CALLBABY: "ALL" + SC_DIMENSIONDOOR: "ALL" + GD_EMERGENCYCALL: "ALL" + } + + disabled_items: { + HitchhikersTowel: true + WhiteHitchhikersTowel: true + RedHitchhikersTowel: true + GreenHitchhikersTowel: true + BlueHitchhikersTowel: true + YellowHitchhikersTowel: true + PurpleHitchhikersTowel: true + OrangeHitchhikersTowel: true + PinkHitchhikersTowel: true + TealHitchhikersTowel: true + LimeHitchhikersTowel: true + } + + mapflags: ( + "nopenalty", + //"nosave 000-1,22,22", + ) + + /* "command:min-group-lv-to-override" e.g. "heal: 70" */ + disabled_commands: { + // Disabled (Should not ever be used) + recallall: 100 + save: 100 + // Admin Only (no CM on these map) + addwarp: 99 + mapflag: 99 + // Community Manager Only (no GM on these map) + recall: 80 + kill: 80 + nuke: 80 + skillon: 80 + skilloff: 80 + pvpon: 80 + pvpoff: 80 + cvcon: 80 + cvcoff: 80 + gvgon: 80 + gvgoff: 80 + // GM Only (no EVTC on these map) + monster: 60 + killmonster: 60 + killmonster2: 60 + raisemap: 60 + doommap: 60 + } + skill_damage_cap: { + } +}, { /* CvC zone is applied to all maps with a cvc mapflag */ name: "CvC" /* changing this name requires MAP_ZONE_CVC_NAME to also be changed in src/map/map.h file */ @@ -318,17 +416,6 @@ zones: ( disabled_items: { } }, -{ - name: "Jail" - - disabled_skills: { - TK_JUMPKICK: "PLAYER" - TK_HIGHJUMP: "PLAYER" - } - - disabled_items: { - } -}, { name: "Izlude Battle Arena" diff --git a/npc/000-1/exit.txt b/npc/000-1/exit.txt index 4c8f167e..d4a6821a 100644 --- a/npc/000-1/exit.txt +++ b/npc/000-1/exit.txt @@ -15,6 +15,7 @@ OnTalkNearby: warp "029-2", 22, 24; end; L_ToLoc: + // Possibly could warp to "Save" as well? ReturnTown(); end; } diff --git a/npc/001-3/mapflags.txt b/npc/001-3/mapflags.txt index 04479442..d86f50e1 100644 --- a/npc/001-3/mapflags.txt +++ b/npc/001-3/mapflags.txt @@ -1,2 +1,2 @@ 001-3 mapflag nosave 002-2,74,59 -//001-3 mapflag resave 002-2,74,59 +001-3 mapflag zone MMO diff --git a/npc/009-5/mapflags.txt b/npc/009-5/mapflags.txt index c27c167e..a1d35c0d 100644 --- a/npc/009-5/mapflags.txt +++ b/npc/009-5/mapflags.txt @@ -1 +1,2 @@ 009-5 mapflag nosave 009-3,162,82 +009-5 mapflag zone MMO diff --git a/npc/009-6/mapflags.txt b/npc/009-6/mapflags.txt index 9b247c8c..c6a65e72 100644 --- a/npc/009-6/mapflags.txt +++ b/npc/009-6/mapflags.txt @@ -1 +1,2 @@ 009-6 mapflag nosave 009-3,162,82 +009-6 mapflag zone MMO diff --git a/npc/013-1/sagatha.txt b/npc/013-1/sagatha.txt index a2f5ce7d..01171c14 100644 --- a/npc/013-1/sagatha.txt +++ b/npc/013-1/sagatha.txt @@ -217,7 +217,7 @@ L_Teach_N14: if (@mexp < 125 || getskilllv(SKILL_MAGIC) < 1) goto L_Teach_noexp; mesn .@n$; - mes "\"Some forest creatures sometimes overgrow their fur or hide. That makes them uncomfortable.\""; + mesq l("Some forest creatures sometimes overgrow their fur or hide. That makes them uncomfortable."); next; mesn .@n$; mesq l("You can help them with shearing magic. Press your hands together and say '%s'. Then touch them with your hands, and brush off any excess.", b("Chipchip")); diff --git a/npc/015-3/mapflags.txt b/npc/015-3/mapflags.txt index 049e6274..8d10f78e 100644 --- a/npc/015-3/mapflags.txt +++ b/npc/015-3/mapflags.txt @@ -1,2 +1,3 @@ 015-3 mapflag nosave 015-1,59,32 //015-3 mapflag resave 010-1,27,97 +015-3 mapflag zone MMO diff --git a/npc/025-4/mapflags.txt b/npc/025-4/mapflags.txt index a5a1cf62..8183383c 100644 --- a/npc/025-4/mapflags.txt +++ b/npc/025-4/mapflags.txt @@ -1,2 +1,2 @@ 025-4 mapflag nosave 025-1,33,50 -//025-4 mapflag resave 025-1,33,50 +025-4 mapflag zone MMO diff --git a/npc/027-6/mapflags.txt b/npc/027-6/mapflags.txt index 1f2249a1..71b31051 100644 --- a/npc/027-6/mapflags.txt +++ b/npc/027-6/mapflags.txt @@ -1,2 +1,2 @@ 027-6 mapflag nosave 027-3,82,90 -//027-6 mapflag resave 027-3,82,90 +027-6 mapflag zone MMO diff --git a/npc/027-7/mapflags.txt b/npc/027-7/mapflags.txt index 808ab063..5a798c1c 100644 --- a/npc/027-7/mapflags.txt +++ b/npc/027-7/mapflags.txt @@ -1,2 +1,2 @@ 027-7 mapflag nosave 027-4,73,78 -//027-7 mapflag resave 027-4,73,78 +027-7 mapflag zone MMO diff --git a/npc/027-8/mapflags.txt b/npc/027-8/mapflags.txt index 180a25be..f19c8671 100644 --- a/npc/027-8/mapflags.txt +++ b/npc/027-8/mapflags.txt @@ -1,2 +1,2 @@ 027-8 mapflag nosave 027-5,70,27 -//027-8 mapflag resave 027-5,70,27 +027-8 mapflag zone MMO diff --git a/npc/028-1/mapflags.txt b/npc/028-1/mapflags.txt index f0c74e5d..cadc40e9 100644 --- a/npc/028-1/mapflags.txt +++ b/npc/028-1/mapflags.txt @@ -1 +1 @@ -028-1 mapflag nosave 009-1,53,40 +028-1 mapflag zone Event diff --git a/npc/028-3/mapflags.txt b/npc/028-3/mapflags.txt index 62771987..7e4c34b6 100644 --- a/npc/028-3/mapflags.txt +++ b/npc/028-3/mapflags.txt @@ -1 +1 @@ -028-3 mapflag nosave 009-1,53,40 +028-3 mapflag zone Event diff --git a/npc/029-2/mapflags.txt b/npc/029-2/mapflags.txt index bfe50c0c..481d8ee5 100644 --- a/npc/029-2/mapflags.txt +++ b/npc/029-2/mapflags.txt @@ -1,3 +1,3 @@ -029-2 mapflag nosave 029-2,22,24 +//029-2 mapflag nosave 029-2,22,24 //029-2 mapflag resave 029-2,22,24 029-2 mapflag mask 1 diff --git a/npc/029-3/mapflags.txt b/npc/029-3/mapflags.txt index a161e111..f64a309a 100644 --- a/npc/029-3/mapflags.txt +++ b/npc/029-3/mapflags.txt @@ -1,2 +1,2 @@ 029-3 mapflag nosave 029-1,39,102 -//029-3 mapflag resave 029-1,39,102 +029-3 mapflag zone MMO diff --git a/npc/030-4/mapflags.txt b/npc/030-4/mapflags.txt index e9283539..72984c63 100644 --- a/npc/030-4/mapflags.txt +++ b/npc/030-4/mapflags.txt @@ -1,2 +1,2 @@ 030-4 mapflag nosave 030-2,151,25 -//030-4 mapflag resave 030-2,151,25 +030-4 mapflag zone MMO diff --git a/npc/031-4/mapflags.txt b/npc/031-4/mapflags.txt index 06a10489..7ce6a307 100644 --- a/npc/031-4/mapflags.txt +++ b/npc/031-4/mapflags.txt @@ -1,2 +1,2 @@ 031-4 mapflag nosave 031-3,46,26 -//031-4 mapflag resave 031-3,46,26 +031-4 mapflag zone MMO diff --git a/npc/051-1/mapflags.txt b/npc/051-1/mapflags.txt index 5ac6d06e..620a8d3c 100644 --- a/npc/051-1/mapflags.txt +++ b/npc/051-1/mapflags.txt @@ -1,2 +1,2 @@ 051-1 mapflag nosave 007-2,36,23 -//051-1 mapflag resave 007-2,36,23 +051-1 mapflag zone MMO diff --git a/npc/051-3/mapflags.txt b/npc/051-3/mapflags.txt index a3b3c49b..3a343f5a 100644 --- a/npc/051-3/mapflags.txt +++ b/npc/051-3/mapflags.txt @@ -1,2 +1,2 @@ 051-3 mapflag nosave 007-2,36,23 -//051-3 mapflag resave 007-2,36,23 +051-3 mapflag zone MMO diff --git a/npc/052-1/mapflags.txt b/npc/052-1/mapflags.txt index 0e8e3295..045801f7 100644 --- a/npc/052-1/mapflags.txt +++ b/npc/052-1/mapflags.txt @@ -1,2 +1,2 @@ 052-1 mapflag nosave 007-2,36,23 -//052-1 mapflag resave 007-2,36,23 +052-1 mapflag zone MMO diff --git a/npc/052-2/mapflags.txt b/npc/052-2/mapflags.txt index d4ce9d64..082d21b1 100644 --- a/npc/052-2/mapflags.txt +++ b/npc/052-2/mapflags.txt @@ -1,2 +1,2 @@ 052-2 mapflag nosave 007-2,36,23 -//052-2 mapflag resave 007-2,36,23 +052-2 mapflag zone MMO diff --git a/npc/070-1/_import.txt b/npc/070-1/_import.txt index 5dbdaa98..2a44f7d7 100644 --- a/npc/070-1/_import.txt +++ b/npc/070-1/_import.txt @@ -1,2 +1,3 @@ // Map 070-1: Underworld // This file is generated automatically. All manually added changes will be removed when running the Converter. +"npc/070-1/mapflags.txt", diff --git a/npc/070-1/mapflags.txt b/npc/070-1/mapflags.txt new file mode 100644 index 00000000..fb393c84 --- /dev/null +++ b/npc/070-1/mapflags.txt @@ -0,0 +1 @@ +070-1 mapflag mask 17 diff --git a/npc/099-5/_import.txt b/npc/099-5/_import.txt index 7d086628..9276a379 100644 --- a/npc/099-5/_import.txt +++ b/npc/099-5/_import.txt @@ -1,2 +1,3 @@ // Map 099-5: ????? // This file is generated automatically. All manually added changes will be removed when running the Converter. +"npc/099-5/mapflag.txt", diff --git a/npc/099-5/mapflag.txt b/npc/099-5/mapflag.txt new file mode 100644 index 00000000..df97cc7c --- /dev/null +++ b/npc/099-5/mapflag.txt @@ -0,0 +1,2 @@ +099-5 mapflag zone MMO +099-6 mapflag zone MMO diff --git a/npc/botcheck/mapflags.txt b/npc/botcheck/mapflags.txt index 754c247c..6d36e10c 100644 --- a/npc/botcheck/mapflags.txt +++ b/npc/botcheck/mapflags.txt @@ -1,2 +1,3 @@ //botcheck mapflag resave botcheck,37,37 -botcheck mapflag nosave botcheck,37,37 +//botcheck mapflag nosave botcheck,37,37 +botcheck mapflag zone Jail diff --git a/npc/items/warpTowels.txt b/npc/items/warpTowels.txt index 35c7d55b..d90e5639 100644 --- a/npc/items/warpTowels.txt +++ b/npc/items/warpTowels.txt @@ -1,10 +1,14 @@ function script WarpTowel { @seconds = TowelLastUsed - (gettimetick(2) - 1200); - if (@seconds > 0 && GM < 1) + if (@seconds > 0 && !is_trusted()) goto L_DontPanic; - if (isin("botcheck",25,27,51,47)) + .@zone = getmapinfo(MAPINFO_ZONE); + if (.@zone == "Jail") goto L_Prison; - if (getmapflag(getmapname(), mf_nosave) || getmapflag(getmapname(), mf_noteleport) || getmapflag(getmapname(), mf_nowarp) || isin("009-7",$@fightclub_x1,$@fightclub_y1,$@fightclub_x2,$@fightclub_y2)) + // Zone will never be MMO, though + if (.@zone == "MMO" || .@zone == "Event") + goto L_Forbid; + if (getmapflag(getmapname(), mf_noteleport) || getmapflag(getmapname(), mf_nowarp) || isin("009-7",$@fightclub_x1,$@fightclub_y1,$@fightclub_x2,$@fightclub_y2)) goto L_Forbid; if (@warpTowelName$ == "HitchhikersTowel") @@ -115,7 +119,7 @@ L_WarpPlayer: goto L_BreakChance; L_BreakChance: - if (rand(15)) + if (rand2(12)) goto L_Keep; getitem "HitchhikersTowel", 1; goto L_End; @@ -125,7 +129,7 @@ L_Forbid: goto L_Keep; L_Prison: - message strcharinfo(0), "Towel : You must be warped by a GM to leave the botcheck area."; + message strcharinfo(0), "Towel : You must be warped by a GM to leave this area."; goto L_Keep; L_DontPanic: -- cgit v1.2.3-70-g09d2