diff options
-rw-r--r-- | npc/008-1/hinnak.txt | 103 |
1 files changed, 93 insertions, 10 deletions
diff --git a/npc/008-1/hinnak.txt b/npc/008-1/hinnak.txt index 65d050e7..69802791 100644 --- a/npc/008-1/hinnak.txt +++ b/npc/008-1/hinnak.txt @@ -1,6 +1,6 @@ // Evol scripts. // Author: -// gumi, Micksha +// gumi, Micksha, Jesusalva, Toams // Quest states: // [1] 0 - cannot do the quest // [1] 1 - can do the quest @@ -13,6 +13,30 @@ 008-1,270,74,0 script Hinnak#008-1 NPC_HINNAK,{ + + function face_to_PC { + getmapxy(.@map$, .@cx, .@cy, 0); + @Hinnak_old_dir = .dir; + npc_turntoxy(.@cx, .@cy); + + return; + } + + function local_close { + if (@Hinnak_old_dir > 0) + { + .dir = @Hinnak_old_dir; + } + npc_resumemove; + + close; + } + + @Hinnak_old_dir = -1; + + npc_pausemove; + face_to_PC; + if (BaseLevel < .min_level) { npctalk3 generic(1 | 16 | 64); @@ -83,7 +107,7 @@ l("But I got an old scythe laying around."), l("Maybe you can use it as a weapon."); - close; + local_close; } function hinn_help @@ -112,7 +136,7 @@ l("Don't try to fool me!"), l("I know you didn't kill them yourself!"), l("Kill at least %d pinkies and come back.", .kill_count); - close; + local_close; } speech 1, @@ -129,7 +153,7 @@ //getexp .reward_exp, 0; setq .quest, 3; } - close; + local_close; } function hinn_thanks @@ -253,16 +277,16 @@ l("Yeah, funny now..."), l("But you should've seen that gaze!"), l("Ah, well, never mind."); - close; + local_close; case 2: speech 1, l("Yeah, you could say that..."); - close; + local_close; case 3: speech 1, l("Oh, I can't be sure..."), l("But something like “Nanaj princino”, I think."); // this is "Dwarven Princess" translated to Esperanto - close; + local_close; } return; } @@ -284,12 +308,12 @@ speech l("No."), l("It tends to be too dark to see a mask."); - close; + local_close; case 2: speech l("Yes, I saw someone with a large sack on their back go to the mining camp."); - close; + local_close; } } @@ -302,7 +326,7 @@ } closeclientdialog(); - close; + local_close; OnNPCKillEvent: // XXX: maybe have a OnTakeScript on the pinky antena item so we count pickups instead of kills @@ -323,6 +347,11 @@ OnPCBaseLvUpEvent: } end; +OnTimer1000: + dographmovestep; + end; + + OnInit: .min_level = 15; // min level to do the quest .maxLevel = getiteminfo(Scythe, ITEMINFO_ELV) + 20; @@ -341,6 +370,60 @@ OnInit: .quest_debug = .quest; .distance = 3; + .speed = 300; + initmovegraph "startspot", 269, 75, + "uppergate", 268, 68, + "lowergate", 268, 83, + "house", 275, 74, + "inside_door", 25, 33, + "table", 36, 32, + "haystack", 273, 79, + "treeyard", 277, 84, + "tree1", 274, 86, + "tree2", 276, 87, + "tree3", 279, 87, + "lowerfield1", 257, 77, + "lowerfield2", 262, 75, + "upperfield1", 264,67, + "upperfield2", 255,68, + "barn", 274,65, + "barn_inside", 274,61; + + setmovegraphcmd "startspot", "haystack", 1, "dir 1; wait 4;" + "say Oh needle where are you?; wait 3;" + "say It's like finding a black cat in the coalshed!; wait 5;" + "say Here you are!; wait 1;" + "say Oh no it's a @#$% Pinkie Antena.; wait 2;" + "say Curse you @#$% Pinkies; wait 8; moveon", + "haystack", "lowergate", 1, "dir 3", + "haystack", "house", 1, "dir 3; warp 008-2-16 inside_door", + + "startspot", "lowergate", 1, "dir 3", + "lowergate", "treeyard", 1, "dir 3", + "treeyard", "tree1", 1, "dir 3; wait 3", + "tree1", "tree2", 1, "dir 3; wait 3;" + "say Thank god Pinkies can't fly, or these trees wouldn't be full of shiny, tasty apples.", + "tree2", "tree3", 1, "dir 3; wait 5", + "tree3", "startspot", 1, "dir 3; wait 15", + "tree3", "lowerfield1", 1, "dir 3", + "lowergate", "lowerfield1", 1, "dir 3", + "lowerfield1", "lowerfield2", 1, "dir 3", + "lowerfield2", "upperfield1", 1, "dir 3", + "upperfield1", "upperfield2", 1, "dir 3", + "upperfield2", "barn", 1, "dir 3;" + "warp barn_inside; wait 5; warp barn; dir 1", + "barn", "startspot", 1, "dir 1; wait 17", + "startspot", "house", 1, "dir 3; warp 008-2-16 inside_door", + "inside_door", "table", 1, "dir 6; sit; wait 8;" + "say Hmmm this sandwich tastes good!; wait 3;" + "say Right what I needed after hunting those @#$% Pinkies for a whole day.; wait 7;" + "say To bad you ran out of Carb, sweet Yannika. Your Carb Sandwiches are the best.; wait 20; moveon", + "table", "inside_door", 1, "dir 4; warp 008-1 house", + "house", "startspot", 1, "dir 1; wait 5"; + + firstmove "wait 1"; + initnpctimer; + ////////// UNFINISHED ////////// //////////////////////////////// // REMOVE THIS CODE WHEN THIS // |