initial commit
This commit is contained in:
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6).zip
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6).zip
Normal file
Binary file not shown.
164
KQ4_v1.006.004_int0.000.502_SRC_(6)/game.ini
Normal file
164
KQ4_v1.006.004_int0.000.502_SRC_(6)/game.ini
Normal file
@@ -0,0 +1,164 @@
|
||||
[Game]
|
||||
Language=sci
|
||||
[Script]
|
||||
n000=Main
|
||||
n001=rm1
|
||||
n002=rm2
|
||||
n003=rm3
|
||||
n004=rm4
|
||||
n005=rm5
|
||||
n006=rm6
|
||||
n007=rm7
|
||||
n008=rm8
|
||||
n009=rm9
|
||||
n010=rm10
|
||||
n011=rm11
|
||||
n012=rm12
|
||||
n013=rm13
|
||||
n014=rm14
|
||||
n015=rm15
|
||||
n016=rm16
|
||||
n017=rm17
|
||||
n018=rm18
|
||||
n019=rm19
|
||||
n020=rm20
|
||||
n021=rm21
|
||||
n022=rm22
|
||||
n023=rm23
|
||||
n024=rm24
|
||||
n025=rm25
|
||||
n026=rm26
|
||||
n027=rm27
|
||||
n028=rm28
|
||||
n029=rm29
|
||||
n030=rm30
|
||||
n031=rm31
|
||||
n032=rm32
|
||||
n033=rm33
|
||||
n034=rm34
|
||||
n035=rm35
|
||||
n036=rm36
|
||||
n037=rm37
|
||||
n038=rm38
|
||||
n039=rm39
|
||||
n040=rm40
|
||||
n041=rm41
|
||||
n042=rm42
|
||||
n043=rm43
|
||||
n044=rm44
|
||||
n045=rm45
|
||||
n046=rm46
|
||||
n047=rm47
|
||||
n048=rm48
|
||||
n049=rm49
|
||||
n050=rm50
|
||||
n051=rm51
|
||||
n053=rm53
|
||||
n054=rm54
|
||||
n055=rm55
|
||||
n056=rm56
|
||||
n057=rm57
|
||||
n058=rm58
|
||||
n059=rm59
|
||||
n060=rm60
|
||||
n061=rm61
|
||||
n062=rm62
|
||||
n063=rm63
|
||||
n064=rm64
|
||||
n065=rm65
|
||||
n066=rm66
|
||||
n067=rm67
|
||||
n068=rm68
|
||||
n069=rm69
|
||||
n070=rm70
|
||||
n071=rm71
|
||||
n072=rm72
|
||||
n073=rm73
|
||||
n074=rm74
|
||||
n075=rm75
|
||||
n076=rm76
|
||||
n077=rm77
|
||||
n078=rm78
|
||||
n079=rm79
|
||||
n080=rm80
|
||||
n081=rm81
|
||||
n082=rm82
|
||||
n083=rm83
|
||||
n084=rm84
|
||||
n085=rm85
|
||||
n086=rm86
|
||||
n087=rm87
|
||||
n088=rm88
|
||||
n089=rm89
|
||||
n090=rm90
|
||||
n091=rm91
|
||||
n092=rm92
|
||||
n093=rm93
|
||||
n094=rm94
|
||||
n095=rm95
|
||||
n098=rm98
|
||||
n099=rm99
|
||||
n120=Intro
|
||||
n221=rm221
|
||||
n222=rm222
|
||||
n255=Class_255_0
|
||||
n301=WearCrown
|
||||
n302=TimeOut
|
||||
n303=PlayIt
|
||||
n304=PlayFlute
|
||||
n305=ShootBow
|
||||
n306=ReadBook
|
||||
n307=openPbox
|
||||
n333=rm333
|
||||
n501=WaterReg
|
||||
n503=BeachReg
|
||||
n504=Gull Region
|
||||
n505=gfReg
|
||||
n506=MeadReg
|
||||
n507=Woods Region
|
||||
n508=Forest Region
|
||||
n509=sForReg
|
||||
n510=CemReg
|
||||
n511=MountReg
|
||||
n512=RiverReg
|
||||
n513=SwampReg
|
||||
n514=regPan
|
||||
n516=Notes
|
||||
n517=Ogre's Region
|
||||
n518=regUnicorn
|
||||
n519=Ocean Region
|
||||
n520=KQ4Music
|
||||
n521=EndMusic
|
||||
n600=rg600
|
||||
n601=regDwarfHouse
|
||||
n602=regOgreHouse
|
||||
n603=GhostWander
|
||||
n604=regBFCastle
|
||||
n605=regTroll
|
||||
n654=rm654
|
||||
n690=rm690
|
||||
n692=rm692
|
||||
n693=rm693
|
||||
n694=rm694
|
||||
n697=rm697
|
||||
n698=rm698
|
||||
n699=rm699
|
||||
n700=rm700
|
||||
n701=CopyProtect
|
||||
n801=DebugMenu
|
||||
n985=Avoid
|
||||
n987=Gauge
|
||||
n988=Extra
|
||||
n989=Sound
|
||||
n990=SysWindow
|
||||
n991=Jump
|
||||
n992=Cycle
|
||||
n993=GameFile.sh
|
||||
n994=Game
|
||||
n995=InvI
|
||||
n996=User
|
||||
n997=MenuBar
|
||||
n998=Feature
|
||||
n999=Obj
|
||||
[View]
|
||||
n900=Rap View
|
||||
226
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Avoid.sc
Normal file
226
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Avoid.sc
Normal file
@@ -0,0 +1,226 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 985)
|
||||
(include sci.sh)
|
||||
(use Obj)
|
||||
|
||||
|
||||
(class Avoid of Obj
|
||||
(properties
|
||||
client 0
|
||||
heading -1000
|
||||
bumpTurn 0
|
||||
lastBumped 0
|
||||
thisTurn 1
|
||||
escaping 0
|
||||
escapes 0
|
||||
escapeTurn 1
|
||||
nearestDist 32000
|
||||
counter 0
|
||||
nonBumps 10
|
||||
targetX 0
|
||||
targetY 0
|
||||
motionInited 0
|
||||
outOfTouch 0
|
||||
offScreenOK 0
|
||||
)
|
||||
|
||||
(method (init theClient theOffScreenOK)
|
||||
(if (>= argc 1) (= client theClient))
|
||||
(if (>= argc 2) (= offScreenOK theOffScreenOK))
|
||||
(= heading (client heading?))
|
||||
(= counter 0)
|
||||
(= nonBumps 10)
|
||||
(= escaping 0)
|
||||
)
|
||||
|
||||
(method (doit &tmp theHeading theNearestDist clientX clientY theTargetX theTargetY clientMover temp7 temp8 clientMoverB_moveCnt temp10 temp11 temp12 temp13)
|
||||
(cond
|
||||
((not (= clientMover (client mover?))) (= heading -1000) (return))
|
||||
((clientMover onTarget:)
|
||||
(if motionInited else (InitBresen clientMover))
|
||||
(clientMover doit:)
|
||||
(return)
|
||||
)
|
||||
((== heading -1000) (self init:))
|
||||
)
|
||||
(= temp13 0)
|
||||
(= temp12 (<= nonBumps 3))
|
||||
(clientMover setTarget:)
|
||||
(= theTargetX (clientMover x?))
|
||||
(= theTargetY (clientMover y?))
|
||||
(= clientX (client x?))
|
||||
(= clientY (client y?))
|
||||
(= temp7
|
||||
(GetAngle clientX clientY theTargetX theTargetY)
|
||||
)
|
||||
(= theNearestDist
|
||||
(GetDistance clientX clientY theTargetX theTargetY)
|
||||
)
|
||||
(= theHeading
|
||||
(= heading (proc999_1 (* 45 (/ heading 45)) 360))
|
||||
)
|
||||
(cond
|
||||
(
|
||||
(not (if escaping else (= temp12 (<= nonBumps 2))))
|
||||
(if (not motionInited)
|
||||
(= motionInited 1)
|
||||
(InitBresen clientMover)
|
||||
)
|
||||
(clientMover doit:)
|
||||
(if
|
||||
(or (!= clientX (client x?)) (!= clientY (client y?)))
|
||||
(self pickLoop: temp7)
|
||||
(++ nonBumps)
|
||||
(return)
|
||||
else
|
||||
(= nonBumps 0)
|
||||
(= temp13 1)
|
||||
(= motionInited 0)
|
||||
)
|
||||
)
|
||||
(
|
||||
(<
|
||||
(= clientMoverB_moveCnt (clientMover b-moveCnt?))
|
||||
(client moveSpeed?)
|
||||
)
|
||||
(clientMover b-moveCnt: (++ clientMoverB_moveCnt))
|
||||
(return)
|
||||
)
|
||||
(else (clientMover b-moveCnt: 0))
|
||||
)
|
||||
(cond
|
||||
(
|
||||
(or
|
||||
(!= targetX (= targetX theTargetX))
|
||||
(!= targetY (= targetY theTargetY))
|
||||
(and
|
||||
escaping
|
||||
(or
|
||||
(<= (-- counter) 0)
|
||||
(and (< theNearestDist nearestDist) (< counter 40))
|
||||
)
|
||||
)
|
||||
)
|
||||
(= motionInited (= escaping 0))
|
||||
(= nearestDist 32000)
|
||||
(= counter 0)
|
||||
)
|
||||
(escaping 1)
|
||||
((< theNearestDist nearestDist) (= nearestDist theNearestDist) (= counter 0))
|
||||
((= escaping (>= (++ counter) 50))
|
||||
(= counter (Random 40 80))
|
||||
(= escapeTurn (- escapeTurn))
|
||||
)
|
||||
)
|
||||
(cond
|
||||
((<= (= temp7 (- temp7 theHeading)) -180) (= temp7 (+ temp7 360)))
|
||||
((> temp7 180) (= temp7 (- temp7 360)))
|
||||
)
|
||||
(= temp11 (<= (= temp8 (Abs temp7)) 90))
|
||||
(= thisTurn
|
||||
(if
|
||||
(cond
|
||||
(escaping (proc999_0 temp7))
|
||||
(temp11 (proc999_0 temp7))
|
||||
(bumpTurn)
|
||||
(lastBumped)
|
||||
(else (proc999_0 temp7))
|
||||
)
|
||||
else
|
||||
escapeTurn
|
||||
)
|
||||
)
|
||||
(if (and (> temp8 22) (or 0 (not escaping)))
|
||||
(= heading (+ heading (* thisTurn 45)))
|
||||
)
|
||||
(if escaping (= thisTurn escapeTurn))
|
||||
(self incClientPos:)
|
||||
(if (self canBeHere:)
|
||||
(++ nonBumps)
|
||||
(= bumpTurn 0)
|
||||
(if (not escaping) (return))
|
||||
else
|
||||
(= lastBumped bumpTurn)
|
||||
(= bumpTurn thisTurn)
|
||||
(= nonBumps 0)
|
||||
)
|
||||
(if escaping
|
||||
(= theHeading (* 45 (/ heading 45)))
|
||||
(= temp10 0)
|
||||
(while (and (< temp10 8) (self canBeHere:))
|
||||
(= heading
|
||||
(proc999_1 (+ theHeading (* 45 temp10 escapeTurn)) 360)
|
||||
)
|
||||
(client x: clientX y: clientY)
|
||||
(self incClientPos:)
|
||||
(++ temp10)
|
||||
)
|
||||
(if (== temp10 8)
|
||||
(= heading (+ heading (* escapeTurn 45)))
|
||||
)
|
||||
(= theHeading heading)
|
||||
)
|
||||
(= temp10 (= clientMoverB_moveCnt 1))
|
||||
(while
|
||||
(and
|
||||
(not (self canBeHere:))
|
||||
(< clientMoverB_moveCnt 8)
|
||||
)
|
||||
(client x: clientX y: clientY)
|
||||
(= heading (- theHeading (* 45 temp10 thisTurn)))
|
||||
(self incClientPos:)
|
||||
(= temp10
|
||||
(cond
|
||||
(escaping (++ clientMoverB_moveCnt))
|
||||
(temp13 (- (++ clientMoverB_moveCnt)))
|
||||
((> temp10 0) (- temp10))
|
||||
(else (++ clientMoverB_moveCnt))
|
||||
)
|
||||
)
|
||||
)
|
||||
(if (not (self canBeHere:)) (client findPosn:))
|
||||
(self pickLoop: heading)
|
||||
)
|
||||
|
||||
(method (incClientPos)
|
||||
(client
|
||||
x:
|
||||
(+
|
||||
(client x?)
|
||||
(* (proc999_0 (TimesSin heading 100)) (client xStep?))
|
||||
)
|
||||
y:
|
||||
(-
|
||||
(client y?)
|
||||
(* (proc999_0 (TimesCos heading 100)) (client yStep?))
|
||||
)
|
||||
heading: heading
|
||||
)
|
||||
)
|
||||
|
||||
(method (pickLoop param1)
|
||||
(client heading: param1)
|
||||
(if (client looper?)
|
||||
((client looper?) doit: client param1)
|
||||
else
|
||||
(DirLoop client param1)
|
||||
)
|
||||
)
|
||||
|
||||
(method (canBeHere)
|
||||
(return
|
||||
(if (client canBeHere:)
|
||||
(cond
|
||||
(offScreenOK)
|
||||
((<= 0 (client x?))
|
||||
(if (<= (client x?) 320)
|
||||
(if (<= 0 (client y?)) (<= (client y?) 200))
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Avoid.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Avoid.sco
Normal file
Binary file not shown.
136
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/BeachReg.sc
Normal file
136
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/BeachReg.sc
Normal file
@@ -0,0 +1,136 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 503)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use InvI)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
beachReg 0
|
||||
)
|
||||
(synonyms
|
||||
(ocean seawater ocean)
|
||||
)
|
||||
|
||||
(local
|
||||
[local0 7]
|
||||
local7
|
||||
gEgoViewer
|
||||
)
|
||||
(instance beachReg of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(super init:)
|
||||
(Load rsVIEW 21)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(cond
|
||||
((Said 'look>')
|
||||
(cond
|
||||
((Said '<in,under/ocean,water')
|
||||
(if (!= (gEgo view?) 2)
|
||||
(Print 503 0)
|
||||
else
|
||||
(Print 503 1)
|
||||
)
|
||||
)
|
||||
((Said '/ocean,water') (Print 503 2))
|
||||
((Said '/fish')
|
||||
(if (gEgo has: 24)
|
||||
((Inv at: 24) showSelf:)
|
||||
else
|
||||
(Print 503 3)
|
||||
)
|
||||
)
|
||||
((Said '/beach') (Print 503 4))
|
||||
((or (Said '/sky') (Said '<up'))
|
||||
(if (not global100)
|
||||
(Print 503 5)
|
||||
else
|
||||
(Print 503 6)
|
||||
)
|
||||
)
|
||||
((or (Said '/dirt') (Said '<down')) (Print 503 7))
|
||||
((Said '/boulder') (Print 503 8))
|
||||
((Said '/forest') (Print 503 9))
|
||||
((Said '/grass') (Print 503 10))
|
||||
((Said '/bush') (Print 503 11))
|
||||
((Said '/flora,blossom') (Print 503 12))
|
||||
)
|
||||
)
|
||||
((Said 'get/flora,blossom') (Print 503 13))
|
||||
((Said 'get/water') (Print 503 14))
|
||||
((or (Said 'drink') (Said 'get/drink'))
|
||||
(cond
|
||||
((!= (gEgo view?) 2) (Print 503 15))
|
||||
(
|
||||
(or
|
||||
(& (= local7 (proc0_2 gEgo 12)) $0008)
|
||||
(& local7 $0800)
|
||||
(& local7 $0002)
|
||||
(& local7 $0200)
|
||||
)
|
||||
(= gGEgoScript (gEgo script?))
|
||||
(gEgo setScript: drinking)
|
||||
)
|
||||
(else (Print 800 1))
|
||||
)
|
||||
)
|
||||
((Said 'bathe,dive,wade[<enter][/ocean]>')
|
||||
(cond
|
||||
((!= global105 4) (Print 503 16))
|
||||
((Said '<under') (Print 503 17))
|
||||
(else (Print 503 18))
|
||||
)
|
||||
(pEvent claimed: 1)
|
||||
)
|
||||
(
|
||||
(or (Said 'capture,get/fish') (Said 'fish[<enter]'))
|
||||
(cond
|
||||
((== global105 4) (Print 503 19))
|
||||
((gEgo has: 17) (Print 503 20))
|
||||
(else (Print 503 21))
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance drinking of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(= global204 1)
|
||||
(proc0_8)
|
||||
(= gEgoViewer (gEgo viewer?))
|
||||
(gEgo viewer: 0 view: 21 cel: 0 setCycle: End self)
|
||||
)
|
||||
(1
|
||||
(Timer setReal: self 5)
|
||||
(= global120 (Print 503 22 67 -1 10 88))
|
||||
)
|
||||
(2 (gEgo setCycle: Beg self))
|
||||
(3
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(= global204 0)
|
||||
(gEgo view: 2 setCycle: Walk)
|
||||
(gEgo script: gGEgoScript viewer: gEgoViewer)
|
||||
(proc0_9)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/BeachReg.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/BeachReg.sco
Normal file
Binary file not shown.
104
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/CemReg.sc
Normal file
104
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/CemReg.sc
Normal file
@@ -0,0 +1,104 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 510)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Game)
|
||||
(use InvI)
|
||||
|
||||
(public
|
||||
cemReg 0
|
||||
)
|
||||
(synonyms
|
||||
(fence wall)
|
||||
)
|
||||
|
||||
(instance cemReg of Rgn
|
||||
(properties)
|
||||
|
||||
(method (handleEvent pEvent &tmp gInvSaidMe)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(cond
|
||||
((Said 'look>')
|
||||
(cond
|
||||
((Said '/flora') (Print 510 0))
|
||||
((Said '/boulder') (Print 510 1))
|
||||
((Said '/dirt,down') (Print 510 2))
|
||||
((Said '/grass') (Print 510 3))
|
||||
((Said '/bush') (Print 510 4))
|
||||
((Said '/blossom') (Print 510 5))
|
||||
((Said '/fence') (Print 510 6))
|
||||
((Said '/forest') (Print 510 7))
|
||||
((Said '/cemetery,cemetery') (Print 510 8))
|
||||
((Said '/grave,crypt') (Print 510 9))
|
||||
((Said '/gravestone') (Print 510 10))
|
||||
((Said '/monument') (Print 510 11))
|
||||
((Said '/ghoul')
|
||||
(if (and global100 global186)
|
||||
(Print 510 12)
|
||||
else
|
||||
(Print 510 13)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
((Said 'get/blossom') (Print 510 14))
|
||||
((Said 'dig[/grave,hole]')
|
||||
(if (not ((Inv at: 15) owner: gEgo))
|
||||
(Print 510 15)
|
||||
)
|
||||
(if (== 5 global113) (Print 510 16))
|
||||
)
|
||||
((Said 'conceal<behind/grave,gravestone') (Print 510 17))
|
||||
((Said 'get/gravestone') (Print 510 18))
|
||||
((Said 'move/gravestone') (Print 510 19))
|
||||
((Said 'converse[/ghoul]')
|
||||
(if (and global100 global186)
|
||||
(Print 510 20)
|
||||
else
|
||||
(Print 510 21)
|
||||
)
|
||||
)
|
||||
((Said 'kill[/ghoul]')
|
||||
(if (and global100 global186)
|
||||
(Print 510 22)
|
||||
else
|
||||
(Print 510 13)
|
||||
)
|
||||
)
|
||||
((Said 'climb/boulder') (Print 510 23))
|
||||
((Said 'get,capture/ghoul')
|
||||
(if (and global100 global186)
|
||||
(Print 510 24)
|
||||
else
|
||||
(Print 510 13)
|
||||
)
|
||||
)
|
||||
((Said 'kiss[/ghoul]')
|
||||
(if (and global100 global186)
|
||||
(Print 510 25)
|
||||
else
|
||||
(pEvent claimed: 0)
|
||||
)
|
||||
)
|
||||
(
|
||||
(and (Said 'deliver>') (= gInvSaidMe (gInv saidMe:)))
|
||||
(if (gEgo has: (gInv indexOf: gInvSaidMe))
|
||||
(if (== global186 0)
|
||||
(Print 510 21)
|
||||
else
|
||||
(Print 510 26)
|
||||
)
|
||||
else
|
||||
(proc0_17)
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/CemReg.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/CemReg.sco
Normal file
Binary file not shown.
1014
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Class_255_0.sc
Normal file
1014
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Class_255_0.sc
Normal file
File diff suppressed because it is too large
Load Diff
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Class_255_0.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Class_255_0.sco
Normal file
Binary file not shown.
551
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/CopyProtect.sc
Normal file
551
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/CopyProtect.sc
Normal file
@@ -0,0 +1,551 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 701)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Game)
|
||||
(use MenuBar)
|
||||
|
||||
(public
|
||||
copyProtect 0
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
local1
|
||||
local2
|
||||
[local3 30]
|
||||
local33
|
||||
local34
|
||||
local35
|
||||
)
|
||||
(instance copyProtect of Rm
|
||||
(properties
|
||||
picture 991
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(super init:)
|
||||
(switch (= local0 (Random 1 79))
|
||||
(1 (= local2 431))
|
||||
(2 (= local2 521))
|
||||
(3 (= local2 535))
|
||||
(4 (= local2 323))
|
||||
(5 (= local2 621))
|
||||
(6 (= local2 480))
|
||||
(7 (= local2 303))
|
||||
(8 (= local2 671))
|
||||
(9 (= local2 393))
|
||||
(10 (= local2 380))
|
||||
(11 (= local2 470))
|
||||
(12 (= local2 287))
|
||||
(13 (= local2 352))
|
||||
(14 (= local2 316))
|
||||
(15 (= local2 317))
|
||||
(16 (= local2 355))
|
||||
(17 (= local2 616))
|
||||
(18 (= local2 475))
|
||||
(19 (= local2 383))
|
||||
(20 (= local2 425))
|
||||
(21 (= local2 516))
|
||||
(22 (= local2 673))
|
||||
(23 (= local2 550))
|
||||
(24 (= local2 666))
|
||||
(25 (= local2 465))
|
||||
(26 (= local2 617))
|
||||
(27 (= local2 628))
|
||||
(28 (= local2 395))
|
||||
(29 (= local2 505))
|
||||
(30 (= local2 492))
|
||||
(31 (= local2 478))
|
||||
(32 (= local2 455))
|
||||
(33 (= local2 455))
|
||||
(34 (= local2 599))
|
||||
(35 (= local2 431))
|
||||
(36 (= local2 565))
|
||||
(37 (= local2 455))
|
||||
(38 (= local2 467))
|
||||
(39 (= local2 691))
|
||||
(40 (= local2 535))
|
||||
(41 (= local2 432))
|
||||
(42 (= local2 621))
|
||||
(43 (= local2 372))
|
||||
(44 (= local2 536))
|
||||
(45 (= local2 395))
|
||||
(46 (= local2 496))
|
||||
(47 (= local2 372))
|
||||
(48 (= local2 389))
|
||||
(49 (= local2 374))
|
||||
(50 (= local2 523))
|
||||
(51 (= local2 286))
|
||||
(52 (= local2 454))
|
||||
(53 (= local2 273))
|
||||
(54 (= local2 579))
|
||||
(55 (= local2 282))
|
||||
(56 (= local2 354))
|
||||
(57 (= local2 602))
|
||||
(58 (= local2 463))
|
||||
(59 (= local2 653))
|
||||
(60 (= local2 691))
|
||||
(61 (= local2 309))
|
||||
(62 (= local2 519))
|
||||
(63 (= local2 380))
|
||||
(64 (= local2 446))
|
||||
(65 (= local2 302))
|
||||
(66 (= local2 599))
|
||||
(67 (= local2 357))
|
||||
(68 (= local2 399))
|
||||
(69 (= local2 381))
|
||||
(70 (= local2 771))
|
||||
(71 (= local2 378))
|
||||
(72 (= local2 378))
|
||||
(73 (= local2 434))
|
||||
(74 (= local2 614))
|
||||
(75 (= local2 395))
|
||||
(76 (= local2 381))
|
||||
(77 (= local2 456))
|
||||
(78 (= local2 384))
|
||||
(79 (= local2 686))
|
||||
)
|
||||
(switch local0
|
||||
(1
|
||||
(= local1
|
||||
{On page 2, what is the fourth word of the first sentence?}
|
||||
)
|
||||
)
|
||||
(2
|
||||
(= local1
|
||||
{On page 2, what is the fourth word of the second paragraph?}
|
||||
)
|
||||
)
|
||||
(3
|
||||
(= local1
|
||||
{On page 3, what is the fourth word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(4
|
||||
(= local1
|
||||
{On page 3, what is the sixth word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(5
|
||||
(= local1
|
||||
{On page 3, what is the fourth word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(6
|
||||
(= local1
|
||||
{On page 3, what is the third word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(7
|
||||
(= local1
|
||||
{On page 8, what is the first word of the first paragraph?}
|
||||
)
|
||||
)
|
||||
(8
|
||||
(= local1
|
||||
{On page 3, what is the seventh word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(9
|
||||
(= local1
|
||||
{On page 3, what is the last word of the third paragraph?}
|
||||
)
|
||||
)
|
||||
(10
|
||||
(= local1
|
||||
{On page 4, what is the third word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(11
|
||||
(= local1
|
||||
{On page 4, what is the last word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(12
|
||||
(= local1
|
||||
{On page 4, what is the sixth word of the first paragraph?}
|
||||
)
|
||||
)
|
||||
(13
|
||||
(= local1
|
||||
{On page 3, what is the eighth word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(14
|
||||
(= local1
|
||||
{On page 4, what is the seventh word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(15
|
||||
(= local1
|
||||
{On page 4, what is the third word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(16
|
||||
(= local1
|
||||
{On page 4, what is the eighth word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(17
|
||||
(= local1
|
||||
{On page 5, what is the fifth word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(18
|
||||
(= local1
|
||||
{On page 5, what is the second word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(19
|
||||
(= local1
|
||||
{On page 5, what is the fourth word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(20
|
||||
(= local1
|
||||
{On page 5, what is the ninth word in the fifth paragraph?}
|
||||
)
|
||||
)
|
||||
(21
|
||||
(= local1
|
||||
{On page 6, what is the third word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(22
|
||||
(= local1
|
||||
{On page 6, what is the fifth word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(23
|
||||
(= local1
|
||||
{On page 6, what is the sixth word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(24
|
||||
(= local1
|
||||
{On page 7, what is the first word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(25
|
||||
(= local1
|
||||
{On page 7, what is the tenth word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(26
|
||||
(= local1
|
||||
{On page 7, what is the third word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(27
|
||||
(= local1
|
||||
{On page 7, what is the fifth word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(28
|
||||
(= local1
|
||||
{On page 7, what is the second word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(29
|
||||
(= local1
|
||||
{On page 8, what is the fifth word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(30
|
||||
(= local1
|
||||
{On page 8, what is the last word of the first sentence in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(31
|
||||
(= local1
|
||||
{On page 6, what is the last word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(32
|
||||
(= local1
|
||||
{On page 8, what is the second word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(33
|
||||
(= local1
|
||||
{On page 8, what is the sixth word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(34
|
||||
(= local1
|
||||
{On page 8, what is the ninth word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(35
|
||||
(= local1
|
||||
{On page 9, what is the third word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(36
|
||||
(= local1
|
||||
{On page 9, what is the fourth word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(37
|
||||
(= local1
|
||||
{On page 9, what is the seventh word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(38
|
||||
(= local1
|
||||
{On page 6, what is the fourth word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(39
|
||||
(= local1
|
||||
{On page 6, what is the eighth word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(40
|
||||
(= local1
|
||||
{On page 9, what is the seventh word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(41
|
||||
(= local1
|
||||
{On page 5, what is the seventh word in the fifth paragraph?}
|
||||
)
|
||||
)
|
||||
(42
|
||||
(= local1
|
||||
{On page 2, what is the sixth word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(43
|
||||
(= local1
|
||||
{On page 2, what is the eighth word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(44
|
||||
(= local1
|
||||
{On page 3, what is the tenth word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(45
|
||||
(= local1
|
||||
{On page 4, what is the second word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(46
|
||||
(= local1
|
||||
{On page 4, what is the fourth word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(47
|
||||
(= local1
|
||||
{On page 5, what is the third word in the second paragraph?}
|
||||
)
|
||||
)
|
||||
(48
|
||||
(= local1
|
||||
{On page 5, what is the eighth word in the third paragraph?}
|
||||
)
|
||||
)
|
||||
(49
|
||||
(= local1
|
||||
{On page 5, what is the eighth word in the fourth paragraph?}
|
||||
)
|
||||
)
|
||||
(50
|
||||
(= local1
|
||||
{On page 6, what is the ninth word in the first paragraph?}
|
||||
)
|
||||
)
|
||||
(51
|
||||
(= local1
|
||||
{On page 7, what is the ninth word of the third paragraph?}
|
||||
)
|
||||
)
|
||||
(52
|
||||
(= local1
|
||||
{What is the second word of the first paragraph in the OVERVIEW?}
|
||||
)
|
||||
)
|
||||
(53
|
||||
(= local1
|
||||
{What is the first word of the second paragraph in the OVERVIEW?}
|
||||
)
|
||||
)
|
||||
(54
|
||||
(= local1
|
||||
{What is the third word of the second paragraph in the OVERVIEW?}
|
||||
)
|
||||
)
|
||||
(55
|
||||
(= local1
|
||||
{What is the sixth word of the first paragraph in the OVERVIEW?}
|
||||
)
|
||||
)
|
||||
(56
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the first word of tip #1 (HOW TO MOVE AROUND)?}
|
||||
)
|
||||
)
|
||||
(57
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the sixth word of tip #1 (HOW TO MOVE AROUND)?}
|
||||
)
|
||||
)
|
||||
(58
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the fifth word in the first paragraph of tip #2 (STAY OUT OF DANGER)}
|
||||
)
|
||||
)
|
||||
(59
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the eighth word in the second paragraph of tip #2 (STAY OUT OF DANGER)}
|
||||
)
|
||||
)
|
||||
(60
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the fourth word in the second paragraph of tip #2 (STAY OUT OF DANGER)}
|
||||
)
|
||||
)
|
||||
(61
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the first word of tip #3 (BE OBSERVANT)?}
|
||||
)
|
||||
)
|
||||
(62
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the fourth word of tip #3 (BE OBSERVANT)?}
|
||||
)
|
||||
)
|
||||
(63
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the last word of tip #3 (BE OBSERVANT)?}
|
||||
)
|
||||
)
|
||||
(64
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the last word of tip #1 (HOW TO MOVE AROUND)?}
|
||||
)
|
||||
)
|
||||
(65
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the first word of tip #4 (MAP YOUR PROGRESS)?}
|
||||
)
|
||||
)
|
||||
(66
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the fifth word of tip #4 (MAP YOUR PROGRESS)?}
|
||||
)
|
||||
)
|
||||
(67
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the seventh word of tip #4 (MAP YOUR PROGRESS)?}
|
||||
)
|
||||
)
|
||||
(68
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the ninth word of tip #4 (MAP YOUR PROGRESS)?}
|
||||
)
|
||||
)
|
||||
(69
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the fourth word of tip #5 (BRING ALONG SOME HELP)?}
|
||||
)
|
||||
)
|
||||
(70
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the seventh word of tip #5 (BRING ALONG SOME HELP)?}
|
||||
)
|
||||
)
|
||||
(71
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the ninth word of tip #5 (BRING ALONG SOME HELP)?}
|
||||
)
|
||||
)
|
||||
(72
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the last word of tip #5 (BRING ALONG SOME HELP)?}
|
||||
)
|
||||
)
|
||||
(73
|
||||
(= local1
|
||||
{What is the last word starting with "b" in the verb list?}
|
||||
)
|
||||
)
|
||||
(74
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the last word of tip #7 (LEAVE NO STONE UNTURNED)?}
|
||||
)
|
||||
)
|
||||
(75
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the fourth word in the first paragraph of tip #8 (AT THE END OF YOUR ROPE)?}
|
||||
)
|
||||
)
|
||||
(76
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the sixth word in the first paragraph of tip #8 (AT THE END OF YOUR ROPE)?}
|
||||
)
|
||||
)
|
||||
(77
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the third word in the second paragraph of tip #8 (AT THE END OF YOUR ROPE)?}
|
||||
)
|
||||
)
|
||||
(78
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the last word in the first paragraph of tip #8 (AT THE END OF YOUR ROPE)?}
|
||||
)
|
||||
)
|
||||
(79
|
||||
(= local1
|
||||
{In the section TIPS FOR NEW ADVENTURE PLAYERS, what is the eighth word in the first paragraph of tip #2 (STAY OUT OF DANGER)?}
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(= local3 0)
|
||||
(= local35 0)
|
||||
(proc0_9)
|
||||
(= global205 0)
|
||||
(Print
|
||||
(Format @global228 701 0 local1)
|
||||
67
|
||||
7
|
||||
5
|
||||
33
|
||||
gSmallFont
|
||||
70
|
||||
290
|
||||
41
|
||||
@local3
|
||||
30
|
||||
)
|
||||
(if
|
||||
(and global215 (= local33 (ReadNumber @local3)))
|
||||
(TheMenuBar draw:)
|
||||
(SL enable:)
|
||||
(self newRoom: local33)
|
||||
(return)
|
||||
)
|
||||
(= gUserFont gSmallFont)
|
||||
(= local33 0)
|
||||
(while (< local33 (StrLen @local3))
|
||||
(= local34
|
||||
(& (= local34 (StrAt @local3 local33)) $005f)
|
||||
)
|
||||
(StrAt @local3 local33 local34)
|
||||
(= local35 (+ local35 local34))
|
||||
(++ local33)
|
||||
)
|
||||
(if (== local35 local2)
|
||||
(gRoom newRoom: 700)
|
||||
else
|
||||
(Print 701 1)
|
||||
(= gQuit 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/CopyProtect.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/CopyProtect.sco
Normal file
Binary file not shown.
463
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Cycle.sc
Normal file
463
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Cycle.sc
Normal file
@@ -0,0 +1,463 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 992)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Obj)
|
||||
|
||||
|
||||
(class Cycle of Obj
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
cycleDir 1
|
||||
cycleCnt 0
|
||||
completed 0
|
||||
)
|
||||
|
||||
(method (init theClient)
|
||||
(if argc (= client theClient))
|
||||
(= cycleCnt 0)
|
||||
(client setCel: -1)
|
||||
(client startUpd:)
|
||||
)
|
||||
|
||||
(method (nextCel)
|
||||
(++ cycleCnt)
|
||||
(return
|
||||
(if (<= cycleCnt (client cycleSpeed?))
|
||||
(client cel?)
|
||||
else
|
||||
(= cycleCnt 0)
|
||||
(if (& (client signal?) $1000)
|
||||
(client cel?)
|
||||
else
|
||||
(+ (client cel?) cycleDir)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cycleDone)
|
||||
)
|
||||
|
||||
(method (motionCue)
|
||||
(client cycler: 0)
|
||||
(if (and completed (IsObject caller)) (caller cue:))
|
||||
(self dispose:)
|
||||
)
|
||||
)
|
||||
|
||||
(class Fwd of Cycle
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
cycleDir 1
|
||||
cycleCnt 0
|
||||
completed 0
|
||||
)
|
||||
|
||||
(method (doit &tmp fwdNextCel)
|
||||
(if
|
||||
(> (= fwdNextCel (self nextCel:)) (client lastCel:))
|
||||
(self cycleDone:)
|
||||
else
|
||||
(client cel: fwdNextCel)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cycleDone)
|
||||
(client cel: 0)
|
||||
)
|
||||
)
|
||||
|
||||
(class Walk of Fwd
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
cycleDir 1
|
||||
cycleCnt 0
|
||||
completed 0
|
||||
)
|
||||
|
||||
(method (doit &tmp temp0)
|
||||
(if (not (client isStopped:)) (super doit:))
|
||||
)
|
||||
)
|
||||
|
||||
(class Rev of Cycle
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
cycleDir -1
|
||||
cycleCnt 0
|
||||
completed 0
|
||||
)
|
||||
|
||||
(method (doit &tmp revNextCel)
|
||||
(if (< (= revNextCel (self nextCel:)) 0)
|
||||
(self cycleDone:)
|
||||
else
|
||||
(client cel: revNextCel)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cycleDone)
|
||||
(client cel: (client lastCel:))
|
||||
)
|
||||
)
|
||||
|
||||
(class CT of Cycle
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
cycleDir 1
|
||||
cycleCnt 0
|
||||
completed 0
|
||||
endCel 0
|
||||
)
|
||||
|
||||
(method (init param1 param2 theCycleDir theCaller &tmp clientLastCel)
|
||||
(super init: param1)
|
||||
(= cycleDir theCycleDir)
|
||||
(if (== argc 4) (= caller theCaller))
|
||||
(= endCel
|
||||
(if (> param2 (= clientLastCel (client lastCel:)))
|
||||
clientLastCel
|
||||
else
|
||||
param2
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (doit &tmp cTNextCel clientLastCel)
|
||||
(if (> endCel (= clientLastCel (client lastCel:)))
|
||||
(= endCel clientLastCel)
|
||||
)
|
||||
(= cTNextCel (self nextCel:))
|
||||
(client
|
||||
cel:
|
||||
(cond
|
||||
((> cTNextCel clientLastCel) 0)
|
||||
((< cTNextCel 0) clientLastCel)
|
||||
(else cTNextCel)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(and (== cycleCnt 0) (== endCel (client cel?)))
|
||||
(self cycleDone:)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cycleDone)
|
||||
(= completed 1)
|
||||
(if caller (= global58 1) else (self motionCue:))
|
||||
)
|
||||
)
|
||||
|
||||
(class End of CT
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
cycleDir 1
|
||||
cycleCnt 0
|
||||
completed 0
|
||||
endCel 0
|
||||
)
|
||||
|
||||
(method (init param1 param2)
|
||||
(super
|
||||
init: param1 (param1 lastCel:) 1 (if (== argc 2) param2 else 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class Beg of CT
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
cycleDir 1
|
||||
cycleCnt 0
|
||||
completed 0
|
||||
endCel 0
|
||||
)
|
||||
|
||||
(method (init param1 param2)
|
||||
(super init: param1 0 -1 (if (== argc 2) param2 else 0))
|
||||
)
|
||||
)
|
||||
|
||||
(class Motion of Obj
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
x 0
|
||||
y 0
|
||||
dx 0
|
||||
dy 0
|
||||
b-moveCnt 0
|
||||
b-i1 0
|
||||
b-i2 0
|
||||
b-di 0
|
||||
b-xAxis 0
|
||||
b-incr 0
|
||||
completed 0
|
||||
)
|
||||
|
||||
(method (init theClient theX theY theCaller &tmp [temp0 2])
|
||||
(if (>= argc 1)
|
||||
(= client theClient)
|
||||
(if (>= argc 2)
|
||||
(= x theX)
|
||||
(if (>= argc 3)
|
||||
(= y theY)
|
||||
(if (>= argc 4) (= caller theCaller))
|
||||
)
|
||||
)
|
||||
)
|
||||
(= b-moveCnt 0)
|
||||
(theClient
|
||||
heading: (GetAngle (theClient x?) (theClient y?) theX theY)
|
||||
)
|
||||
(if (theClient looper?)
|
||||
((theClient looper?)
|
||||
doit: theClient (theClient heading?)
|
||||
)
|
||||
else
|
||||
(DirLoop theClient (theClient heading?))
|
||||
)
|
||||
(InitBresen self)
|
||||
)
|
||||
|
||||
(method (doit &tmp [temp0 6])
|
||||
(DoBresen self)
|
||||
(if (and (== x (client x?)) (== y (client y?)))
|
||||
(self moveDone:)
|
||||
(return)
|
||||
)
|
||||
)
|
||||
|
||||
(method (moveDone)
|
||||
(= completed 1)
|
||||
(if caller (= global58 1) else (self motionCue:))
|
||||
)
|
||||
|
||||
(method (triedToMove)
|
||||
(return (== b-moveCnt 0))
|
||||
)
|
||||
|
||||
(method (setTarget theX theY)
|
||||
(if argc (= x theX) (= y theY))
|
||||
)
|
||||
|
||||
(method (onTarget)
|
||||
(return (if (== (client x?) x) (== (client y?) y) else 0))
|
||||
)
|
||||
|
||||
(method (motionCue)
|
||||
(client mover: 0)
|
||||
(if (and completed (IsObject caller)) (caller cue:))
|
||||
(self dispose:)
|
||||
)
|
||||
)
|
||||
|
||||
(class MoveTo of Motion
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
x 0
|
||||
y 0
|
||||
dx 0
|
||||
dy 0
|
||||
b-moveCnt 0
|
||||
b-i1 0
|
||||
b-i2 0
|
||||
b-di 0
|
||||
b-xAxis 0
|
||||
b-incr 0
|
||||
completed 0
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(super init: &rest)
|
||||
)
|
||||
|
||||
(method (onTarget)
|
||||
(return
|
||||
(if (<= (Abs (- (client x?) x)) (client xStep?))
|
||||
(<= (Abs (- (client y?) y)) (client yStep?))
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class Wander of Motion
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
x 0
|
||||
y 0
|
||||
dx 0
|
||||
dy 0
|
||||
b-moveCnt 0
|
||||
b-i1 0
|
||||
b-i2 0
|
||||
b-di 0
|
||||
b-xAxis 0
|
||||
b-incr 0
|
||||
completed 0
|
||||
distance 30
|
||||
)
|
||||
|
||||
(method (init theClient theDistance &tmp temp0)
|
||||
(if (>= argc 1)
|
||||
(= client theClient)
|
||||
(if (>= argc 2) (= distance theDistance))
|
||||
)
|
||||
(= temp0 (* distance 2))
|
||||
(= x (+ (theClient x?) (- distance (Random 1 temp0))))
|
||||
(= y (+ (theClient y?) (- distance (Random 1 temp0))))
|
||||
(super init: client x y)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(super doit:)
|
||||
(if (client isStopped:) (self moveDone:))
|
||||
)
|
||||
|
||||
(method (moveDone)
|
||||
(self init: client distance)
|
||||
)
|
||||
|
||||
(method (setTarget &tmp temp0)
|
||||
(= temp0 (* distance 2))
|
||||
(= x (+ (client x?) (- distance (Random 1 temp0))))
|
||||
(= y (+ (client y?) (- distance (Random 1 temp0))))
|
||||
)
|
||||
|
||||
(method (onTarget)
|
||||
(return 0)
|
||||
)
|
||||
)
|
||||
|
||||
(class Follow of Motion
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
x 0
|
||||
y 0
|
||||
dx 0
|
||||
dy 0
|
||||
b-moveCnt 0
|
||||
b-i1 0
|
||||
b-i2 0
|
||||
b-di 0
|
||||
b-xAxis 0
|
||||
b-incr 0
|
||||
completed 0
|
||||
who 0
|
||||
distance 20
|
||||
)
|
||||
|
||||
(method (init theClient theWho theDistance)
|
||||
(if (>= argc 1)
|
||||
(= client theClient)
|
||||
(if (>= argc 2)
|
||||
(= who theWho)
|
||||
(if (>= argc 3) (= distance theDistance))
|
||||
)
|
||||
)
|
||||
(if (> (client distanceTo: who) distance)
|
||||
(super init: client (who x?) (who y?))
|
||||
)
|
||||
)
|
||||
|
||||
(method (doit &tmp temp0)
|
||||
(if (> (client distanceTo: who) distance)
|
||||
(super doit:)
|
||||
(if (== b-moveCnt 0)
|
||||
(super init: client (who x?) (who y?))
|
||||
)
|
||||
else
|
||||
(= temp0
|
||||
(GetAngle (client x?) (client y?) (who x?) (who y?))
|
||||
)
|
||||
(if (client looper?)
|
||||
((client looper?) doit: client temp0)
|
||||
else
|
||||
(DirLoop client temp0)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (moveDone)
|
||||
)
|
||||
|
||||
(method (setTarget)
|
||||
(cond
|
||||
(argc (super setTarget: &rest))
|
||||
((not (self onTarget:)) (super setTarget: (who x?) (who y?)))
|
||||
)
|
||||
)
|
||||
|
||||
(method (onTarget)
|
||||
(return (<= (client distanceTo: who) distance))
|
||||
)
|
||||
)
|
||||
|
||||
(class Chase of Motion
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
x 0
|
||||
y 0
|
||||
dx 0
|
||||
dy 0
|
||||
b-moveCnt 0
|
||||
b-i1 0
|
||||
b-i2 0
|
||||
b-di 0
|
||||
b-xAxis 0
|
||||
b-incr 0
|
||||
completed 0
|
||||
who 0
|
||||
distance 0
|
||||
)
|
||||
|
||||
(method (init theClient theWho theDistance theCaller)
|
||||
(if (>= argc 1)
|
||||
(= client theClient)
|
||||
(if (>= argc 2)
|
||||
(= who theWho)
|
||||
(if (>= argc 3)
|
||||
(= distance theDistance)
|
||||
(if (>= argc 4) (= caller theCaller))
|
||||
)
|
||||
)
|
||||
)
|
||||
(super init: client (who x?) (who y?) caller)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(if (<= (client distanceTo: who) distance)
|
||||
(self moveDone:)
|
||||
else
|
||||
(super doit:)
|
||||
(if (== b-moveCnt 0)
|
||||
(super init: client (who x?) (who y?) caller)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (setTarget)
|
||||
(cond
|
||||
(argc (super setTarget: &rest))
|
||||
((not (self onTarget:)) (super setTarget: (who x?) (who y?)))
|
||||
)
|
||||
)
|
||||
|
||||
(method (onTarget)
|
||||
(return (<= (client distanceTo: who) distance))
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Cycle.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Cycle.sco
Normal file
Binary file not shown.
109
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/DebugMenu.sc
Normal file
109
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/DebugMenu.sc
Normal file
@@ -0,0 +1,109 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 801)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Game)
|
||||
(use InvI)
|
||||
(use MenuBar)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
DebugMenu 0
|
||||
)
|
||||
|
||||
(instance DebugMenu of Script
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(AddMenu
|
||||
{ Debug_}
|
||||
{Ego info...`@e:Show Room`@R:Free Mem`@F:Show ATPs`@P:-! :Set Debug`^D:Clicks:Set Inv`@S:Set Var`@V:Get All`@G:Log`@L:-! :Visual`#0:Priority`#6:Control`#4}
|
||||
)
|
||||
(if (not (SL state?)) (TheMenuBar draw:))
|
||||
)
|
||||
|
||||
(method (doit param1 &tmp temp0 [temp1 6] [temp7 33])
|
||||
(switch param1
|
||||
(1537
|
||||
(Print
|
||||
(Format
|
||||
@global228
|
||||
801
|
||||
0
|
||||
(gEgo x?)
|
||||
(gEgo y?)
|
||||
(gEgo priority?)
|
||||
)
|
||||
82
|
||||
(gEgo view?)
|
||||
(gEgo loop?)
|
||||
(gEgo cel?)
|
||||
)
|
||||
)
|
||||
(1538
|
||||
(Print (Format @temp7 801 1 gCurRoomNum))
|
||||
)
|
||||
(1539 (gGame showMem:))
|
||||
(1540 (gAddToPics showSelf:))
|
||||
(1542 (= global14 1))
|
||||
(1543
|
||||
(if (= global215 (^ global215 $0001))
|
||||
(Print 801 2)
|
||||
)
|
||||
)
|
||||
(1544
|
||||
(= global228 0)
|
||||
(EditPrint @global228 8 {Inv. Object})
|
||||
(= global111 (ReadNumber @global228))
|
||||
(= global228 0)
|
||||
(EditPrint @global228 12 {Owner})
|
||||
(if (not (StrCmp {ego} @global228))
|
||||
((gInv at: global111) moveTo: gEgo)
|
||||
else
|
||||
((gInv at: global111) moveTo: (ReadNumber @global228))
|
||||
)
|
||||
(= global228 0)
|
||||
)
|
||||
(1545
|
||||
(= global228 0)
|
||||
(EditPrint @global228 8 {Variable No.})
|
||||
(= global111 (ReadNumber @global228))
|
||||
(= global228 0)
|
||||
(EditPrint @global228 8 {Value})
|
||||
(= [global100 (- global111 100)]
|
||||
(ReadNumber @global228)
|
||||
)
|
||||
(= global228 0)
|
||||
)
|
||||
(1546
|
||||
(gInv eachElementDo: #moveTo gEgo)
|
||||
((Inv at: 14) loop: 0 cel: 0)
|
||||
)
|
||||
(1547
|
||||
(if (not global196)
|
||||
(if (< (= global195 (FOpen {KQ4QA.LOG} 0)) 0)
|
||||
(Print 801 3)
|
||||
else
|
||||
(= global196 1)
|
||||
(Print 801 4)
|
||||
(FPuts global195 {New entries start here.\0D\0A})
|
||||
)
|
||||
else
|
||||
(Print 801 5)
|
||||
)
|
||||
)
|
||||
(1549 (Show 1))
|
||||
(1550 (Show 2))
|
||||
(1551
|
||||
(Show 4)
|
||||
(Animate (gCast elements?))
|
||||
(while (== 0 ((= temp0 (Event new: 32765)) type?))
|
||||
(temp0 dispose:)
|
||||
)
|
||||
(temp0 dispose:)
|
||||
(Show 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/DebugMenu.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/DebugMenu.sco
Normal file
Binary file not shown.
77
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Decompiler.ini
Normal file
77
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Decompiler.ini
Normal file
@@ -0,0 +1,77 @@
|
||||
[methodParameterNames]
|
||||
changeState = "newState"
|
||||
handleEvent = "pEvent"
|
||||
dispatchEvent = "pEvent"
|
||||
doVerb = "theVerb"
|
||||
newRoom = "newRoomNumber"
|
||||
setRegions = "scriptNumbers"
|
||||
setFeatures = "theFeatures"
|
||||
setLocales = "scriptNumbers"
|
||||
setSpeed = "newSpeed"
|
||||
setCursor = "cursorNumber"
|
||||
setScript = [ "theScript", "sendParams"]
|
||||
drawPic = [ "picNumber", "picAnimation" ]
|
||||
overlay = [ "picNumber", "picAnimation" ]
|
||||
setCycle = [ "theCycler", "sendParams" ]
|
||||
setMotion = [ "theMover", "sendParams" ]
|
||||
setAvoider = [ "theAvoider", "sendParams" ]
|
||||
observeControl = "bits"
|
||||
ignoreControl = "bits"
|
||||
onControl = "fUsePoint"
|
||||
distanceTo = "pObj"
|
||||
setStep = [ "newX", "newY" ]
|
||||
setDirection = "newDirection"
|
||||
display = "theText"
|
||||
|
||||
[methodParameterNames.Cycle] # not yet implemented
|
||||
init = "theClient"
|
||||
|
||||
[enums]
|
||||
evType = [ "ev.*" ]
|
||||
verbType = [ "WALK", "LOOK", "DO", "TALK", "ASK", "HELP" ]
|
||||
drawPicAnimation = ["dp.*"]
|
||||
drawPicClear = ["dpCLEAR", "dpNO_CLEAR"]
|
||||
rsType = [ "rs.*" ]
|
||||
fiType = [ "fi.*" ]
|
||||
palType = [ "pal.*" ]
|
||||
sndType = [ "snd.*" ]
|
||||
grType = [ "gr.*" ]
|
||||
pvType = [ "pv.*" ]
|
||||
msgType = [ "msg.*" ]
|
||||
evMsgType = [ "KEY_.*", "JOY_.*" ]
|
||||
evModType = [ "em.*" ]
|
||||
signalType = [ "notUpd" ,"fixPriOn" ,"isExtra" ,"noTurn" ,"skipCheck" ,"ignoreHorizon" , "ignAct" ]
|
||||
memType = [ "mem.*" ]
|
||||
|
||||
[commonSwitchValueTypes]
|
||||
theVerb = "verbType"
|
||||
"pEvent.message" = "evMsgType"
|
||||
"pEvent.type" = "evType"
|
||||
"pEvent.modifiers" = "evModType"
|
||||
pEventMessage = "evMsgType"
|
||||
pEventType = "evType"
|
||||
pEventModifiers = "evModType"
|
||||
signal = "signalType"
|
||||
|
||||
# use certain enums when assigning to or comparing to parameters for a function
|
||||
[methodParameterTypes]
|
||||
doVerb = [ "verbType" ]
|
||||
firstTrue = [ "selector" ]
|
||||
allTrue = [ "selector" ]
|
||||
respondsTo = [ "selector" ]
|
||||
eachElementDo = [ "selector" ]
|
||||
|
||||
# use certain enums when passing parameters to kernel calls
|
||||
[kernelParameterTypes]
|
||||
DrawPic = [ "", "drawPicAnimation", "drawPicClear" ]
|
||||
Load = [ "rsType" ]
|
||||
FileIO = [ "fiType" ]
|
||||
Palette = [ "palType" ]
|
||||
PalVary = [ "pvType" ]
|
||||
DoSound = [ "sndType" ]
|
||||
Graph = [ "grType" ]
|
||||
Message = [ "msgType" ]
|
||||
Memory = [ "memType" ]
|
||||
|
||||
[bitfieldProperties]
|
||||
bitfieldProperties = [ "style", "signal", "flags", "modifiers", "scaleSignal", "syncCue", "prevCue", "onMeCheck", "state", "type", "illegalBits" ]
|
||||
25
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/EndMusic.sc
Normal file
25
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/EndMusic.sc
Normal file
@@ -0,0 +1,25 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 521)
|
||||
(include sci.sh)
|
||||
(use Sound)
|
||||
(use Game)
|
||||
|
||||
(public
|
||||
RgEnd 0
|
||||
ENDMUSIC 1
|
||||
)
|
||||
|
||||
(instance ENDMUSIC of Sound
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance RgEnd of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(if initialized (return))
|
||||
(= keep 1)
|
||||
(super init:)
|
||||
(ENDMUSIC number: 201 owner: 521 init:)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/EndMusic.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/EndMusic.sco
Normal file
Binary file not shown.
133
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Extra.sc
Normal file
133
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Extra.sc
Normal file
@@ -0,0 +1,133 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 988)
|
||||
(include sci.sh)
|
||||
(use Cycle)
|
||||
(use Feature)
|
||||
|
||||
|
||||
(class Extra of Prop
|
||||
(properties
|
||||
y 0
|
||||
x 0
|
||||
z 0
|
||||
heading 0
|
||||
yStep 2
|
||||
view 0
|
||||
loop 0
|
||||
cel 0
|
||||
priority 0
|
||||
underBits 0
|
||||
signal $0000
|
||||
nsTop 0
|
||||
nsLeft 0
|
||||
nsBottom 0
|
||||
nsRight 0
|
||||
lsTop 0
|
||||
lsLeft 0
|
||||
lsBottom 0
|
||||
lsRight 0
|
||||
brTop 0
|
||||
brLeft 0
|
||||
brBottom 0
|
||||
brRight 0
|
||||
cycleSpeed 1
|
||||
script 0
|
||||
cycler 0
|
||||
timer 0
|
||||
cycleType 0
|
||||
hesitation 0
|
||||
pauseCel 0
|
||||
minPause 10
|
||||
maxPause 30
|
||||
minCycles 8
|
||||
maxCycles 20
|
||||
counter 0
|
||||
state $ffff
|
||||
cycles 0
|
||||
)
|
||||
|
||||
(procedure (localproc_0148)
|
||||
(switch pauseCel
|
||||
(-1 (Random 0 (self lastCel:)))
|
||||
(-2 (self lastCel:))
|
||||
((== cycleType 0) pauseCel)
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(method (init)
|
||||
(= cel (localproc_0148))
|
||||
(self changeState: 0)
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(if
|
||||
(and
|
||||
(== cycleType 1)
|
||||
(== cel pauseCel)
|
||||
(!= pauseCel 0)
|
||||
)
|
||||
(== cycles (+ hesitation 1))
|
||||
)
|
||||
(if (and cycles (not (-- cycles))) (self cue:))
|
||||
(super doit:)
|
||||
)
|
||||
|
||||
(method (cue)
|
||||
(if (& signal $0005)
|
||||
else
|
||||
(self changeState: (+ state 1))
|
||||
)
|
||||
)
|
||||
|
||||
(method (stopExtra)
|
||||
(self setCel: (localproc_0148) stopUpd:)
|
||||
)
|
||||
|
||||
(method (startExtra)
|
||||
(self changeState: 1)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(if (== counter 0)
|
||||
(= cycles (Random minPause maxPause))
|
||||
(if (!= cycleType 0)
|
||||
(= counter (- (Random minCycles maxCycles) 1))
|
||||
)
|
||||
else
|
||||
(-- counter)
|
||||
(self cue:)
|
||||
)
|
||||
)
|
||||
(1
|
||||
(if (== cycleType 0)
|
||||
(self setCycle: Fwd)
|
||||
(= cycles (Random minCycles maxCycles))
|
||||
else
|
||||
(self setCycle: End self)
|
||||
)
|
||||
)
|
||||
(2
|
||||
(if (== cycleType 2)
|
||||
(= cycles hesitation)
|
||||
else
|
||||
(self cue:)
|
||||
)
|
||||
)
|
||||
(3
|
||||
(if (== cycleType 2)
|
||||
(self setCycle: Beg self)
|
||||
else
|
||||
(self cue:)
|
||||
)
|
||||
)
|
||||
(4
|
||||
(self setCel: (localproc_0148))
|
||||
(self changeState: 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Extra.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Extra.sco
Normal file
Binary file not shown.
720
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Feature.sc
Normal file
720
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Feature.sc
Normal file
@@ -0,0 +1,720 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 998)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Cycle)
|
||||
(use Obj)
|
||||
|
||||
|
||||
(class Feature of Obj
|
||||
(properties
|
||||
y 0
|
||||
x 0
|
||||
z 0
|
||||
heading 0
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(gFeatures delete: self)
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(pEvent claimed?)
|
||||
)
|
||||
)
|
||||
|
||||
(class PV of Feature
|
||||
(properties
|
||||
y 0
|
||||
x 0
|
||||
z 0
|
||||
heading 0
|
||||
view 0
|
||||
loop 0
|
||||
cel 0
|
||||
priority -1
|
||||
signal $0000
|
||||
)
|
||||
|
||||
(method (showSelf)
|
||||
(Print name 82 view loop cel)
|
||||
)
|
||||
)
|
||||
|
||||
(class View of Feature
|
||||
(properties
|
||||
y 0
|
||||
x 0
|
||||
z 0
|
||||
heading 0
|
||||
yStep 2
|
||||
view 0
|
||||
loop 0
|
||||
cel 0
|
||||
priority 0
|
||||
underBits 0
|
||||
signal $0101
|
||||
nsTop 0
|
||||
nsLeft 0
|
||||
nsBottom 0
|
||||
nsRight 0
|
||||
lsTop 0
|
||||
lsLeft 0
|
||||
lsBottom 0
|
||||
lsRight 0
|
||||
brTop 0
|
||||
brLeft 0
|
||||
brBottom 0
|
||||
brRight 0
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(= signal (& signal $7fff))
|
||||
(if (not (gCast contains: self))
|
||||
(= lsRight (= lsBottom (= lsLeft (= lsTop 0))))
|
||||
(= signal (& signal $ff77))
|
||||
)
|
||||
(BaseSetter self)
|
||||
(gCast add: self)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(self startUpd: hide:)
|
||||
(= signal (| signal $8000))
|
||||
)
|
||||
|
||||
(method (showSelf)
|
||||
(Print name 82 view loop cel)
|
||||
)
|
||||
|
||||
(method (posn theX theY theZ)
|
||||
(if (>= argc 1)
|
||||
(= x theX)
|
||||
(if (>= argc 2)
|
||||
(= y theY)
|
||||
(if (>= argc 3) (= z theZ))
|
||||
)
|
||||
)
|
||||
(BaseSetter self)
|
||||
(self forceUpd:)
|
||||
)
|
||||
|
||||
(method (stopUpd)
|
||||
(= signal (| signal notUpd))
|
||||
(= signal (& signal $fffd))
|
||||
)
|
||||
|
||||
(method (forceUpd)
|
||||
(= signal (| signal $0040))
|
||||
)
|
||||
|
||||
(method (startUpd)
|
||||
(= signal (| signal $0002))
|
||||
(= signal (& signal $fffe))
|
||||
)
|
||||
|
||||
(method (setPri thePriority)
|
||||
(cond
|
||||
((== argc 0) (= signal (| signal fixPriOn)))
|
||||
((== thePriority -1) (= signal (& signal $ffef)))
|
||||
(else (= priority thePriority) (= signal (| signal fixPriOn)))
|
||||
)
|
||||
(self forceUpd:)
|
||||
)
|
||||
|
||||
(method (setLoop theLoop)
|
||||
(cond
|
||||
((== argc 0) (= signal (| signal noTurn)))
|
||||
((== theLoop -1) (= signal (& signal $f7ff)))
|
||||
(else (= loop theLoop) (= signal (| signal noTurn)))
|
||||
)
|
||||
(self forceUpd:)
|
||||
)
|
||||
|
||||
(method (setCel param1)
|
||||
(cond
|
||||
((== argc 0) (= signal (| signal skipCheck)))
|
||||
((== param1 -1) (= signal (& signal $efff)))
|
||||
(else
|
||||
(= signal (| signal skipCheck))
|
||||
(= cel
|
||||
(if (>= param1 (self lastCel:))
|
||||
(self lastCel:)
|
||||
else
|
||||
param1
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(self forceUpd:)
|
||||
)
|
||||
|
||||
(method (ignoreActors param1)
|
||||
(if (or (== 0 argc) param1)
|
||||
(= signal (| signal ignAct))
|
||||
else
|
||||
(= signal (& signal $bfff))
|
||||
)
|
||||
)
|
||||
|
||||
(method (hide)
|
||||
(= signal (| signal $0008))
|
||||
)
|
||||
|
||||
(method (show)
|
||||
(= signal (& signal $fff7))
|
||||
)
|
||||
|
||||
(method (delete)
|
||||
(if (& signal $8000)
|
||||
(if (& signal $0020)
|
||||
(gAddToPics
|
||||
add:
|
||||
((PV new:)
|
||||
view: view
|
||||
loop: loop
|
||||
cel: cel
|
||||
x: x
|
||||
y: y
|
||||
z: z
|
||||
priority: priority
|
||||
signal: signal
|
||||
yourself:
|
||||
)
|
||||
)
|
||||
)
|
||||
(= signal (& signal $7fff))
|
||||
(gCast delete: self)
|
||||
(if underBits (UnLoad 133 underBits) (= underBits 0))
|
||||
(super dispose:)
|
||||
)
|
||||
)
|
||||
|
||||
(method (addToPic)
|
||||
(if (not (gCast contains: self)) (self init:))
|
||||
(self signal: (| signal $8021))
|
||||
)
|
||||
|
||||
(method (lastCel)
|
||||
(return (- (NumCels self) 1))
|
||||
)
|
||||
|
||||
(method (isExtra param1 &tmp temp0)
|
||||
(= temp0 (& signal isExtra))
|
||||
(if argc
|
||||
(if param1
|
||||
(= signal (| signal isExtra))
|
||||
else
|
||||
(= signal (& signal $fdff))
|
||||
)
|
||||
)
|
||||
(return temp0)
|
||||
)
|
||||
|
||||
(method (motionCue)
|
||||
)
|
||||
)
|
||||
|
||||
(class Prop of View
|
||||
(properties
|
||||
y 0
|
||||
x 0
|
||||
z 0
|
||||
heading 0
|
||||
yStep 2
|
||||
view 0
|
||||
loop 0
|
||||
cel 0
|
||||
priority 0
|
||||
underBits 0
|
||||
signal $0000
|
||||
nsTop 0
|
||||
nsLeft 0
|
||||
nsBottom 0
|
||||
nsRight 0
|
||||
lsTop 0
|
||||
lsLeft 0
|
||||
lsBottom 0
|
||||
lsRight 0
|
||||
brTop 0
|
||||
brLeft 0
|
||||
brBottom 0
|
||||
brRight 0
|
||||
cycleSpeed 0
|
||||
script 0
|
||||
cycler 0
|
||||
timer 0
|
||||
)
|
||||
|
||||
(method (doit &tmp temp0)
|
||||
(if (& signal $8000) (return))
|
||||
(if script (script doit:))
|
||||
(if (and (& signal $0004) (not (& signal $0002)))
|
||||
(return)
|
||||
)
|
||||
(if cycler (cycler doit:))
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if script (script handleEvent: pEvent))
|
||||
(pEvent claimed?)
|
||||
)
|
||||
|
||||
(method (delete)
|
||||
(if (& signal $8000)
|
||||
(self setScript: 0 setCycle: 0)
|
||||
(if timer (timer dispose:))
|
||||
(super delete:)
|
||||
)
|
||||
)
|
||||
|
||||
(method (motionCue)
|
||||
(if (and cycler (cycler completed?))
|
||||
(cycler motionCue:)
|
||||
)
|
||||
)
|
||||
|
||||
(method (setCycle theCycler)
|
||||
(if cycler (cycler dispose:))
|
||||
(if theCycler
|
||||
(self startUpd:)
|
||||
(= cycler (theCycler new:))
|
||||
(cycler init: self &rest)
|
||||
else
|
||||
(= cycler 0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (setScript theScript)
|
||||
(if (IsObject script) (script dispose:))
|
||||
(if (= script theScript)
|
||||
((= script theScript) init: self &rest)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cue)
|
||||
(if script (script cue:))
|
||||
)
|
||||
)
|
||||
|
||||
(class Act of Prop
|
||||
(properties
|
||||
y 0
|
||||
x 0
|
||||
z 0
|
||||
heading 0
|
||||
yStep 2
|
||||
view 0
|
||||
loop 0
|
||||
cel 0
|
||||
priority 0
|
||||
underBits 0
|
||||
signal $0000
|
||||
nsTop 0
|
||||
nsLeft 0
|
||||
nsBottom 0
|
||||
nsRight 0
|
||||
lsTop 0
|
||||
lsLeft 0
|
||||
lsBottom 0
|
||||
lsRight 0
|
||||
brTop 0
|
||||
brLeft 0
|
||||
brBottom 0
|
||||
brRight 0
|
||||
cycleSpeed 0
|
||||
script 0
|
||||
cycler 0
|
||||
timer 0
|
||||
illegalBits $8000
|
||||
xLast 0
|
||||
yLast 0
|
||||
xStep 3
|
||||
moveSpeed 0
|
||||
blocks 0
|
||||
baseSetter 0
|
||||
mover 0
|
||||
looper 0
|
||||
viewer 0
|
||||
avoider 0
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(super init:)
|
||||
(= xLast x)
|
||||
(= yLast y)
|
||||
)
|
||||
|
||||
(method (doit &tmp temp0 theBrLeft theBrRight)
|
||||
(if (& signal $8000) (return))
|
||||
(= signal (& signal $fbff))
|
||||
(if script (script doit:))
|
||||
(if (and (& signal $0004) (not (& signal $0002)))
|
||||
(return)
|
||||
)
|
||||
(if viewer (viewer doit: self))
|
||||
(cond
|
||||
(avoider (avoider doit:))
|
||||
(mover (mover doit:))
|
||||
)
|
||||
(if cycler
|
||||
(= theBrLeft brLeft)
|
||||
(= theBrRight brRight)
|
||||
(cycler doit:)
|
||||
(if baseSetter
|
||||
(baseSetter doit: self)
|
||||
else
|
||||
(BaseSetter self)
|
||||
)
|
||||
(if
|
||||
(and
|
||||
(or (!= theBrLeft brLeft) (!= theBrRight brRight))
|
||||
(not (self canBeHere:))
|
||||
)
|
||||
(self findPosn:)
|
||||
)
|
||||
)
|
||||
(= xLast x)
|
||||
(= yLast y)
|
||||
)
|
||||
|
||||
(method (posn theXLast theYLast)
|
||||
(super posn: theXLast theYLast &rest)
|
||||
(= xLast theXLast)
|
||||
(= yLast theYLast)
|
||||
(if (not (self canBeHere:)) (self findPosn:))
|
||||
)
|
||||
|
||||
(method (delete)
|
||||
(if (& signal $8000)
|
||||
(if (!= mover -1) (self setMotion: 0))
|
||||
(self setAvoider: 0)
|
||||
(if baseSetter (baseSetter dispose:) (= baseSetter 0))
|
||||
(if looper (looper dispose:) (= looper 0))
|
||||
(if viewer (viewer dispose:) (= viewer 0))
|
||||
(if blocks (blocks dispose:) (= blocks 0))
|
||||
(super delete:)
|
||||
)
|
||||
)
|
||||
|
||||
(method (motionCue)
|
||||
(if (and mover (mover completed?)) (mover motionCue:))
|
||||
(super motionCue:)
|
||||
)
|
||||
|
||||
(method (setMotion theMover &tmp [temp0 40])
|
||||
(if (and mover (!= mover -1)) (mover dispose:))
|
||||
(if theMover
|
||||
(self startUpd:)
|
||||
(= mover
|
||||
(if (& (theMover -info-?) $8000)
|
||||
(theMover new:)
|
||||
else
|
||||
theMover
|
||||
)
|
||||
)
|
||||
(mover init: self &rest)
|
||||
else
|
||||
(= mover 0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (setAvoider theAvoider)
|
||||
(if avoider (avoider dispose:))
|
||||
(= avoider
|
||||
(if
|
||||
(and
|
||||
(IsObject theAvoider)
|
||||
(& (theAvoider -info-?) $8000)
|
||||
)
|
||||
(theAvoider new:)
|
||||
else
|
||||
theAvoider
|
||||
)
|
||||
)
|
||||
(if avoider (avoider init: self &rest))
|
||||
)
|
||||
|
||||
(method (ignoreHorizon param1)
|
||||
(if (or (not argc) param1)
|
||||
(= signal (| signal ignoreHorizon))
|
||||
else
|
||||
(= signal (& signal $dfff))
|
||||
)
|
||||
)
|
||||
|
||||
(method (observeControl bits &tmp temp0)
|
||||
(= temp0 0)
|
||||
(while (< temp0 argc)
|
||||
(= illegalBits (| illegalBits [bits temp0]))
|
||||
(++ temp0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (ignoreControl bits &tmp temp0)
|
||||
(= temp0 0)
|
||||
(while (< temp0 argc)
|
||||
(= illegalBits (& illegalBits (~ [bits temp0])))
|
||||
(++ temp0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (observeBlocks)
|
||||
(if (not blocks) (= blocks (Set new:)))
|
||||
(blocks add: &rest)
|
||||
)
|
||||
|
||||
(method (ignoreBlocks)
|
||||
(blocks delete: &rest)
|
||||
(if (blocks isEmpty:) (blocks dispose:) (= blocks 0))
|
||||
)
|
||||
|
||||
(method (isStopped)
|
||||
(cond
|
||||
((not (IsObject mover)))
|
||||
((== x xLast) (if (== y yLast) (mover triedToMove:)))
|
||||
)
|
||||
)
|
||||
|
||||
(method (isBlocked)
|
||||
(return (& signal $0400))
|
||||
)
|
||||
|
||||
(method (findPosn &tmp temp0 temp1 theX theY temp4)
|
||||
(= theX x)
|
||||
(= theY y)
|
||||
(= temp4 0)
|
||||
(= temp1 1)
|
||||
(while (not temp4)
|
||||
(= temp0 0)
|
||||
(while (and (not temp4) (< temp0 8))
|
||||
(= x
|
||||
(+
|
||||
theX
|
||||
(* temp1 (proc999_0 (TimesCos (* temp0 45) 100)))
|
||||
)
|
||||
)
|
||||
(= y
|
||||
(-
|
||||
theY
|
||||
(* temp1 (proc999_0 (TimesSin (* temp0 45) 100)))
|
||||
)
|
||||
)
|
||||
(= temp4
|
||||
(if (self canBeHere:) (self onControl:) else 0)
|
||||
)
|
||||
(++ temp0)
|
||||
)
|
||||
(++ temp1)
|
||||
)
|
||||
(self posn: x y)
|
||||
)
|
||||
|
||||
(method (inRect param1 param2 param3 param4)
|
||||
(return
|
||||
(if
|
||||
(and (<= param1 x) (< x param3) (<= param2 y))
|
||||
(< y param4)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (onControl fUsePoint)
|
||||
(if (and argc fUsePoint)
|
||||
(OnControl 4 x y)
|
||||
else
|
||||
(OnControl 4 brLeft brTop brRight brBottom)
|
||||
)
|
||||
)
|
||||
|
||||
(method (distanceTo pObj)
|
||||
(GetDistance x y (pObj x?) (pObj y?) gPicAngle)
|
||||
)
|
||||
|
||||
(method (canBeHere)
|
||||
(if baseSetter
|
||||
(baseSetter doit: self)
|
||||
else
|
||||
(BaseSetter self)
|
||||
)
|
||||
(if
|
||||
(and
|
||||
(CanBeHere self (gCast elements?))
|
||||
(or
|
||||
(& signal ignoreHorizon)
|
||||
(not (IsObject gRoom))
|
||||
(>= y (gRoom horizon?))
|
||||
)
|
||||
)
|
||||
(if (== blocks 0) else (blocks allTrue: #doit self))
|
||||
)
|
||||
)
|
||||
|
||||
(method (setStep newX newY)
|
||||
(if (and (>= argc 1) (!= newX -1)) (= xStep newX))
|
||||
(if (and (>= argc 2) (!= newY -1)) (= yStep newY))
|
||||
(if
|
||||
(and mover (!= -1 mover) (mover isMemberOf: MoveTo))
|
||||
(self
|
||||
setMotion: MoveTo (mover x?) (mover y?) (mover caller?)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (setDirection newDirection &tmp temp0)
|
||||
(if (== newDirection 0) (self setMotion: 0) (return))
|
||||
(self
|
||||
setMotion:
|
||||
MoveTo
|
||||
(+
|
||||
x
|
||||
(TimesSin
|
||||
(+
|
||||
(= temp0 (* 45 (- newDirection 1)))
|
||||
(GetAngle
|
||||
x
|
||||
y
|
||||
(gRoom vanishingX?)
|
||||
(gRoom vanishingY?)
|
||||
)
|
||||
)
|
||||
10000
|
||||
)
|
||||
)
|
||||
(- y (TimesCos temp0 10000))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class Ego of Act
|
||||
(properties
|
||||
y 0
|
||||
x 0
|
||||
z 0
|
||||
heading 0
|
||||
yStep 2
|
||||
view 0
|
||||
loop 0
|
||||
cel 0
|
||||
priority 0
|
||||
underBits 0
|
||||
signal $2000
|
||||
nsTop 0
|
||||
nsLeft 0
|
||||
nsBottom 0
|
||||
nsRight 0
|
||||
lsTop 0
|
||||
lsLeft 0
|
||||
lsBottom 0
|
||||
lsRight 0
|
||||
brTop 0
|
||||
brLeft 0
|
||||
brBottom 0
|
||||
brRight 0
|
||||
cycleSpeed 0
|
||||
script 0
|
||||
cycler 0
|
||||
timer 0
|
||||
illegalBits $8000
|
||||
xLast 0
|
||||
yLast 0
|
||||
xStep 3
|
||||
moveSpeed 0
|
||||
blocks 0
|
||||
baseSetter 0
|
||||
mover 0
|
||||
looper 0
|
||||
viewer 0
|
||||
avoider 0
|
||||
edgeHit 0
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(super init:)
|
||||
(if (not cycler) (self setCycle: Walk))
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(super doit:)
|
||||
(= edgeHit
|
||||
(cond
|
||||
((<= x 0) 4)
|
||||
((<= y (gRoom horizon?)) 1)
|
||||
((>= x 319) 2)
|
||||
((>= y 189) 3)
|
||||
(else 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (get param1 &tmp temp0)
|
||||
(= temp0 0)
|
||||
(while (< temp0 argc)
|
||||
((gInv at: [param1 temp0]) moveTo: self)
|
||||
(++ temp0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (put param1 param2)
|
||||
(if (self has: param1)
|
||||
((gInv at: param1)
|
||||
moveTo: (if (== argc 1) -1 else param2)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (has param1 &tmp temp0)
|
||||
(if (= temp0 (gInv at: param1)) (temp0 ownedBy: self))
|
||||
)
|
||||
)
|
||||
|
||||
(class Blk of Obj
|
||||
(properties
|
||||
top 0
|
||||
left 0
|
||||
bottom 0
|
||||
right 0
|
||||
)
|
||||
|
||||
(method (doit param1)
|
||||
(return
|
||||
(if
|
||||
(or
|
||||
(<= (param1 brBottom?) top)
|
||||
(> (param1 brTop?) bottom)
|
||||
(< (param1 brRight?) left)
|
||||
)
|
||||
else
|
||||
(>= (param1 brLeft?) right)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class Cage of Blk
|
||||
(properties
|
||||
top 0
|
||||
left 0
|
||||
bottom 0
|
||||
right 0
|
||||
)
|
||||
|
||||
(method (doit param1)
|
||||
(return
|
||||
(if
|
||||
(and
|
||||
(>= (param1 brTop?) top)
|
||||
(>= (param1 brLeft?) left)
|
||||
(<= (param1 brBottom?) bottom)
|
||||
)
|
||||
(<= (param1 brRight?) right)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Feature.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Feature.sco
Normal file
Binary file not shown.
115
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Forest Region.sc
Normal file
115
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Forest Region.sc
Normal file
@@ -0,0 +1,115 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 508)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
Forest_Region 0
|
||||
)
|
||||
|
||||
(instance Forest_Region of Rgn
|
||||
(properties
|
||||
name "Forest Region"
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(if (== (Random 1 5) 4)
|
||||
(= gNewAct_4 (Act new:))
|
||||
(gNewAct_4
|
||||
view: 356
|
||||
illegalBits: 0
|
||||
ignoreActors:
|
||||
setPri: 14
|
||||
ignoreHorizon:
|
||||
setScript: ravenActions
|
||||
)
|
||||
(if (== (Random 1 2) 1)
|
||||
(gNewAct_4
|
||||
posn: 5 30
|
||||
setCycle: Fwd
|
||||
xStep: 5
|
||||
yStep: 4
|
||||
setMotion: MoveTo 339 20 gNewAct_4
|
||||
init:
|
||||
)
|
||||
else
|
||||
(gNewAct_4
|
||||
posn: 314 20
|
||||
xStep: 5
|
||||
yStep: 4
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo -20 40 gNewAct_4
|
||||
init:
|
||||
)
|
||||
)
|
||||
)
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(cond
|
||||
((Said 'look>')
|
||||
(cond
|
||||
((Said '/boulder') (Print 508 0))
|
||||
((or (Said '/dirt') (Said '/down')) (Print 508 1))
|
||||
((Said '/grass') (Print 508 2))
|
||||
((Said '/bush') (Print 508 3))
|
||||
((Said '/flora') (Print 508 4))
|
||||
((Said '/blossom') (Print 508 5))
|
||||
((Said '/forest') (Print 508 6))
|
||||
((Said '/crow,bird,crow')
|
||||
(if (gCast contains: gNewAct_4)
|
||||
(Print 508 7)
|
||||
else
|
||||
(Print 508 8)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
((Said 'climb/boulder') (Print 508 9))
|
||||
((Said 'get/blossom') (Print 508 10))
|
||||
((Said 'climb/forest') (Print 508 11))
|
||||
((Said 'converse/crow,bird,crow')
|
||||
(if (gCast contains: gNewAct_4)
|
||||
(Print 508 12)
|
||||
else
|
||||
(Print 508 13)
|
||||
)
|
||||
)
|
||||
((Said 'get,capture/crow,bird,crow')
|
||||
(if (gCast contains: gNewAct_4)
|
||||
(Print 508 14)
|
||||
else
|
||||
(Print 508 15)
|
||||
)
|
||||
)
|
||||
((Said 'kiss/crow,bird,crow')
|
||||
(if (gCast contains: gNewAct_4)
|
||||
(Print 508 16)
|
||||
else
|
||||
(Print 508 15)
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance ravenActions of Script
|
||||
(properties)
|
||||
|
||||
(method (cue)
|
||||
(gNewAct_4 dispose:)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Forest Region.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Forest Region.sco
Normal file
Binary file not shown.
608
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Game.sc
Normal file
608
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Game.sc
Normal file
@@ -0,0 +1,608 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 994)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Sound)
|
||||
(use SysWindow)
|
||||
(use Cycle)
|
||||
(use InvI)
|
||||
(use User)
|
||||
(use Obj)
|
||||
|
||||
|
||||
(procedure (localproc_0b98 param1 &tmp temp0 [temp1 40] [temp41 40] [temp81 40])
|
||||
(= temp0 1)
|
||||
(DeviceInfo 0 global30 @temp1)
|
||||
(DeviceInfo 1 @temp41)
|
||||
(if
|
||||
(and
|
||||
(DeviceInfo 2 @temp1 @temp41)
|
||||
(DeviceInfo 3 @temp41)
|
||||
)
|
||||
(Format
|
||||
@temp81
|
||||
994
|
||||
6
|
||||
(if param1 {SAVE GAME} else {GAME})
|
||||
@temp41
|
||||
)
|
||||
(if
|
||||
(==
|
||||
(= temp0
|
||||
(if param1
|
||||
(Print
|
||||
@temp81
|
||||
33
|
||||
0
|
||||
81
|
||||
{OK}
|
||||
1
|
||||
81
|
||||
{Cancel}
|
||||
0
|
||||
81
|
||||
{Change Directory}
|
||||
2
|
||||
)
|
||||
else
|
||||
(Print @temp81 33 0 81 {OK} 1)
|
||||
)
|
||||
)
|
||||
2
|
||||
)
|
||||
(= temp0 (proc990_0 global30))
|
||||
)
|
||||
)
|
||||
(return temp0)
|
||||
)
|
||||
|
||||
(instance cast of EventHandler
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance features of EventHandler
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance sFeatures of EventHandler
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance sounds of EventHandler
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance regions of EventHandler
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance locales of EventHandler
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance addToPics of EventHandler
|
||||
(properties)
|
||||
|
||||
(method (doit)
|
||||
(AddToPic elements)
|
||||
)
|
||||
)
|
||||
|
||||
(instance controls of Controls
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance timers of Set
|
||||
(properties)
|
||||
)
|
||||
|
||||
(class Game of Obj
|
||||
(properties
|
||||
script 0
|
||||
)
|
||||
|
||||
(method (init &tmp theMotion)
|
||||
(= theMotion Motion)
|
||||
(= theMotion Sound)
|
||||
(= theMotion Save)
|
||||
((= gCast cast) add:)
|
||||
((= gFeatures features) add:)
|
||||
((= gSFeatures sFeatures) add:)
|
||||
((= gSounds sounds) add:)
|
||||
((= gRegions regions) add:)
|
||||
((= gLocales locales) add:)
|
||||
((= gAddToPics addToPics) add:)
|
||||
((= gTimers timers) add:)
|
||||
(= global30 (GetSaveDir))
|
||||
(Inv init:)
|
||||
(User init:)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(gSounds eachElementDo: #check)
|
||||
(gTimers eachElementDo: #doit)
|
||||
(Animate (gCast elements?) 1)
|
||||
(if global58
|
||||
(= global58 0)
|
||||
(gCast eachElementDo: #motionCue)
|
||||
)
|
||||
(if script (script doit:))
|
||||
(gRegions eachElementDo: #doit)
|
||||
(User doit:)
|
||||
(if (!= gNewRoomNumber_2 gCurRoomNum)
|
||||
(self newRoom: gNewRoomNumber_2)
|
||||
)
|
||||
(gTimers eachElementDo: #delete)
|
||||
(GameIsRestarting 0)
|
||||
)
|
||||
|
||||
(method (showSelf)
|
||||
(gRegions showSelf:)
|
||||
)
|
||||
|
||||
(method (play)
|
||||
(= gGame self)
|
||||
(= global30 (GetSaveDir))
|
||||
(if (not (GameIsRestarting)) (GetCWD global30))
|
||||
(self setCursor: gLoadingCursor 1)
|
||||
(self init:)
|
||||
(self setCursor: gNormalCursor (HaveMouse))
|
||||
(while (not gQuit)
|
||||
(self doit:)
|
||||
(= global18 (Wait gSpeed))
|
||||
)
|
||||
)
|
||||
|
||||
(method (replay)
|
||||
(if gLastEvent (gLastEvent dispose:))
|
||||
(gSFeatures release:)
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(gCast eachElementDo: #perform RU)
|
||||
(gGame setCursor: gLoadingCursor 1)
|
||||
(DrawPic (gRoom curPic?) dpOPEN_TOP dpCLEAR 0)
|
||||
(if (!= gPicNumber -1)
|
||||
(DrawPic gPicNumber dpOPEN_TOP dpNO_CLEAR 0)
|
||||
)
|
||||
(if (gRoom controls?) ((gRoom controls?) draw:))
|
||||
(gAddToPics doit:)
|
||||
(gGame setCursor: gNormalCursor (HaveMouse))
|
||||
(SL doit:)
|
||||
(DoSound sndRESUME)
|
||||
(Sound pause: 0)
|
||||
(while (not gQuit)
|
||||
(self doit:)
|
||||
(= global18 (Wait gSpeed))
|
||||
)
|
||||
)
|
||||
|
||||
(method (newRoom newRoomNumber &tmp [temp0 4] temp4 temp5)
|
||||
(gAddToPics dispose:)
|
||||
(gFeatures eachElementDo: #dispose)
|
||||
(gCast eachElementDo: #dispose)
|
||||
(gCast eachElementDo: #delete)
|
||||
(gTimers eachElementDo: #delete)
|
||||
(gRegions eachElementDo: #perform DNKR)
|
||||
(gRegions release:)
|
||||
(gLocales eachElementDo: #dispose)
|
||||
(Animate 0)
|
||||
(= gPrevRoomNum gCurRoomNum)
|
||||
(= gCurRoomNum newRoomNumber)
|
||||
(= gNewRoomNumber_2 newRoomNumber)
|
||||
(FlushResources newRoomNumber)
|
||||
(= temp4 (self setCursor: gLoadingCursor 1))
|
||||
(self
|
||||
startRoom: gCurRoomNum
|
||||
checkAni:
|
||||
setCursor: temp4 (HaveMouse)
|
||||
)
|
||||
(SetSynonyms gRegions)
|
||||
(while ((= temp5 (Event new: 3)) type?)
|
||||
(temp5 dispose:)
|
||||
)
|
||||
(temp5 dispose:)
|
||||
)
|
||||
|
||||
(method (startRoom param1)
|
||||
(if global14 (SetDebug))
|
||||
(gRegions
|
||||
addToFront: ((= gRoom (ScriptID param1)) init: yourself:)
|
||||
)
|
||||
)
|
||||
|
||||
(method (restart)
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(RestartGame)
|
||||
)
|
||||
|
||||
(method (restore &tmp [temp0 20] temp20 temp21 temp22)
|
||||
(Load rsFONT gSmallFont)
|
||||
(= temp21 (self setCursor: gNormalCursor))
|
||||
(= temp22 (Sound pause: 1))
|
||||
(if (localproc_0b98 1)
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(if (!= (= temp20 (Restore doit: &rest)) -1)
|
||||
(self setCursor: gLoadingCursor 1)
|
||||
(if (CheckSaveGame name temp20 global28)
|
||||
(gCast eachElementDo: #dispose)
|
||||
(gCast eachElementDo: #delete)
|
||||
(RestoreGame name temp20 global28)
|
||||
else
|
||||
(Print 994 1 33 0 81 {OK} 1)
|
||||
(self setCursor: temp21 (HaveMouse))
|
||||
)
|
||||
)
|
||||
(localproc_0b98 0)
|
||||
)
|
||||
(Sound pause: temp22)
|
||||
)
|
||||
|
||||
(method (save &tmp [temp0 20] temp20 temp21 temp22)
|
||||
(Load rsFONT gSmallFont)
|
||||
(Load rsCURSOR gLoadingCursor)
|
||||
(= temp22 (Sound pause: 1))
|
||||
(if (localproc_0b98 1)
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(if (!= (= temp20 (Save doit: @temp0)) -1)
|
||||
(= temp21 (self setCursor: gLoadingCursor 1))
|
||||
(if (not (SaveGame name temp20 @temp0 global28))
|
||||
(Print 994 0 33 0 81 {OK} 1)
|
||||
)
|
||||
(self setCursor: temp21 (HaveMouse))
|
||||
)
|
||||
(localproc_0b98 0)
|
||||
)
|
||||
(Sound pause: temp22)
|
||||
)
|
||||
|
||||
(method (changeScore param1)
|
||||
(= global15 (+ global15 param1))
|
||||
(SL doit:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(cond
|
||||
(
|
||||
(or
|
||||
(gRegions handleEvent: pEvent)
|
||||
(gLocales handleEvent: pEvent)
|
||||
)
|
||||
)
|
||||
(script (script handleEvent: pEvent))
|
||||
)
|
||||
(pEvent claimed?)
|
||||
)
|
||||
|
||||
(method (showMem)
|
||||
(FormatPrint
|
||||
{Free Heap: %u Bytes\0ALargest ptr: %u Bytes\0AFreeHunk: %u KBytes\0ALargest hunk: %u Bytes}
|
||||
(MemoryInfo 1)
|
||||
(MemoryInfo 0)
|
||||
(>> (MemoryInfo 3) $0006)
|
||||
(MemoryInfo 2)
|
||||
)
|
||||
)
|
||||
|
||||
(method (setSpeed newSpeed &tmp theGNewSpeed)
|
||||
(= theGNewSpeed gSpeed)
|
||||
(= gSpeed newSpeed)
|
||||
(return theGNewSpeed)
|
||||
)
|
||||
|
||||
(method (setCursor cursorNumber param2 &tmp theGCursorNumber)
|
||||
(= theGCursorNumber gCursorNumber)
|
||||
(= gCursorNumber cursorNumber)
|
||||
(if (== argc 1)
|
||||
(SetCursor cursorNumber)
|
||||
else
|
||||
(SetCursor cursorNumber param2)
|
||||
)
|
||||
(return theGCursorNumber)
|
||||
)
|
||||
|
||||
(method (checkAni &tmp temp0)
|
||||
(Animate (gCast elements?) 0)
|
||||
(Wait 0)
|
||||
(Animate (gCast elements?) 0)
|
||||
(while (> (Wait 0) global50)
|
||||
(breakif (== (= temp0 (gCast firstTrue: #isExtra)) 0))
|
||||
(temp0 addToPic:)
|
||||
(Animate (gCast elements?) 0)
|
||||
(gCast eachElementDo: #delete)
|
||||
)
|
||||
)
|
||||
|
||||
(method (notify)
|
||||
)
|
||||
|
||||
(method (setScript theScript)
|
||||
(if script (script dispose:))
|
||||
(if (= script theScript)
|
||||
((= script theScript) init: self &rest)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cue)
|
||||
(if script (script cue:))
|
||||
)
|
||||
|
||||
(method (wordFail param1 &tmp [temp0 100])
|
||||
(FormatPrint 994 2 param1)
|
||||
(return 0)
|
||||
)
|
||||
|
||||
(method (syntaxFail)
|
||||
(Print 994 3)
|
||||
)
|
||||
|
||||
(method (semanticFail)
|
||||
(Print 994 4)
|
||||
)
|
||||
|
||||
(method (pragmaFail)
|
||||
(Print 994 5)
|
||||
)
|
||||
)
|
||||
|
||||
(class Rgn of Obj
|
||||
(properties
|
||||
script 0
|
||||
number 0
|
||||
timer 0
|
||||
keep 0
|
||||
initialized 0
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(if (not initialized)
|
||||
(= initialized 1)
|
||||
(if (not (gRegions contains: self))
|
||||
(gRegions addToEnd: self)
|
||||
)
|
||||
(super init:)
|
||||
)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(if script (script doit:))
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(gRegions delete: self)
|
||||
(if (IsObject script) (script dispose:))
|
||||
(if (IsObject timer) (timer dispose:))
|
||||
(gSounds eachElementDo: #clean self)
|
||||
(DisposeScript number)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if script (script handleEvent: pEvent))
|
||||
(pEvent claimed?)
|
||||
)
|
||||
|
||||
(method (setScript theScript)
|
||||
(if (IsObject script) (script dispose:))
|
||||
(if (= script theScript)
|
||||
((= script theScript) init: self &rest)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cue)
|
||||
(if script (script cue:))
|
||||
)
|
||||
|
||||
(method (newRoom)
|
||||
)
|
||||
|
||||
(method (notify)
|
||||
)
|
||||
)
|
||||
|
||||
(class Rm of Rgn
|
||||
(properties
|
||||
script 0
|
||||
number 0
|
||||
timer 0
|
||||
keep 0
|
||||
initialized 0
|
||||
picture 0
|
||||
style $ffff
|
||||
horizon 0
|
||||
controls 0
|
||||
north 0
|
||||
east 0
|
||||
south 0
|
||||
west 0
|
||||
curPic 0
|
||||
picAngle 0
|
||||
vanishingX 160
|
||||
vanishingY -30000
|
||||
)
|
||||
|
||||
(method (init &tmp temp0)
|
||||
(= number gCurRoomNum)
|
||||
(= controls controls)
|
||||
(= gPicAngle picAngle)
|
||||
(if picture (self drawPic: picture))
|
||||
(switch ((User alterEgo?) edgeHit?)
|
||||
(1 ((User alterEgo?) y: 188))
|
||||
(4
|
||||
((User alterEgo?)
|
||||
x: (- 319 ((User alterEgo?) xStep?))
|
||||
)
|
||||
)
|
||||
(3
|
||||
((User alterEgo?)
|
||||
y: (+ horizon ((User alterEgo?) yStep?))
|
||||
)
|
||||
)
|
||||
(2 ((User alterEgo?) x: 1))
|
||||
)
|
||||
((User alterEgo?) edgeHit: 0)
|
||||
)
|
||||
|
||||
(method (doit &tmp temp0)
|
||||
(if script (script doit:))
|
||||
(if
|
||||
(= temp0
|
||||
(switch ((User alterEgo?) edgeHit?)
|
||||
(1 north)
|
||||
(2 east)
|
||||
(3 south)
|
||||
(4 west)
|
||||
)
|
||||
)
|
||||
(self newRoom: temp0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(if controls (controls dispose:))
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(cond
|
||||
((super handleEvent: pEvent))
|
||||
(controls (controls handleEvent: pEvent))
|
||||
)
|
||||
(pEvent claimed?)
|
||||
)
|
||||
|
||||
(method (newRoom newRoomNumber)
|
||||
(gRegions
|
||||
delete: self
|
||||
eachElementDo: #newRoom newRoomNumber
|
||||
addToFront: self
|
||||
)
|
||||
(= gNewRoomNumber_2 newRoomNumber)
|
||||
(super newRoom: newRoomNumber)
|
||||
)
|
||||
|
||||
(method (setRegions scriptNumbers &tmp temp0 theScriptNumbers temp2)
|
||||
(= temp0 0)
|
||||
(while (< temp0 argc)
|
||||
(= theScriptNumbers [scriptNumbers temp0])
|
||||
((= temp2 (ScriptID theScriptNumbers))
|
||||
number: theScriptNumbers
|
||||
)
|
||||
(gRegions add: temp2)
|
||||
(if (not (temp2 initialized?)) (temp2 init:))
|
||||
(++ temp0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (setFeatures theFeatures &tmp temp0 [temp1 2])
|
||||
(= temp0 0)
|
||||
(while (< temp0 argc)
|
||||
(gFeatures add: [theFeatures temp0])
|
||||
(++ temp0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (setLocales scriptNumbers &tmp temp0 theScriptNumbers temp2)
|
||||
(= temp0 0)
|
||||
(while (< temp0 argc)
|
||||
(= theScriptNumbers [scriptNumbers temp0])
|
||||
((= temp2 (ScriptID theScriptNumbers))
|
||||
number: theScriptNumbers
|
||||
)
|
||||
(gLocales add: temp2)
|
||||
(temp2 init:)
|
||||
(++ temp0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (drawPic picNumber picAnimation)
|
||||
(addToPics dispose:)
|
||||
(= curPic picNumber)
|
||||
(= gPicNumber -1)
|
||||
(DrawPic
|
||||
picNumber
|
||||
(cond
|
||||
((== argc 2) picAnimation)
|
||||
((!= style -1) style)
|
||||
(else global17)
|
||||
)
|
||||
dpCLEAR
|
||||
0
|
||||
)
|
||||
)
|
||||
|
||||
(method (overlay picNumber picAnimation)
|
||||
(= gPicNumber picNumber)
|
||||
(DrawPic
|
||||
picNumber
|
||||
(cond
|
||||
((== argc 2) picAnimation)
|
||||
((!= style -1) style)
|
||||
(else global17)
|
||||
)
|
||||
dpNO_CLEAR
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class Locale of Obj
|
||||
(properties
|
||||
number 0
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(gLocales delete: self)
|
||||
(DisposeScript number)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(pEvent claimed?)
|
||||
)
|
||||
)
|
||||
|
||||
(class SL of Obj
|
||||
(properties
|
||||
state $0000
|
||||
code 0
|
||||
)
|
||||
|
||||
(method (doit &tmp [temp0 41])
|
||||
(if code
|
||||
(code doit: @temp0)
|
||||
(DrawStatus (if state @temp0 else 0))
|
||||
)
|
||||
)
|
||||
|
||||
(method (enable)
|
||||
(= state 1)
|
||||
(self doit:)
|
||||
)
|
||||
|
||||
(method (disable)
|
||||
(= state 0)
|
||||
(self doit:)
|
||||
)
|
||||
)
|
||||
|
||||
(instance RU of Code
|
||||
(properties)
|
||||
|
||||
(method (doit param1 &tmp temp0)
|
||||
(if (param1 underBits?)
|
||||
(= temp0
|
||||
(&
|
||||
(= temp0 (| (= temp0 (param1 signal?)) $0001))
|
||||
$fffb
|
||||
)
|
||||
)
|
||||
(param1 underBits: 0 signal: temp0)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance DNKR of Code
|
||||
(properties)
|
||||
|
||||
(method (doit param1)
|
||||
(if (not (param1 keep?)) (param1 dispose:))
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Game.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Game.sco
Normal file
Binary file not shown.
51
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/GameFile.sh.sc
Normal file
51
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/GameFile.sh.sc
Normal file
@@ -0,0 +1,51 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 993)
|
||||
(include sci.sh)
|
||||
(use Obj)
|
||||
|
||||
|
||||
(class gamefile_sh of Obj
|
||||
(properties
|
||||
handle 0
|
||||
name "gamefile.sh"
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(self close:)
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (showStr param1)
|
||||
(Format param1 993 0 name)
|
||||
)
|
||||
|
||||
(method (open param1)
|
||||
(= handle
|
||||
(switch argc
|
||||
(0 (FOpen name 0))
|
||||
(1 (FOpen name param1))
|
||||
(else -1)
|
||||
)
|
||||
)
|
||||
(return (if (== handle -1) 0 else self))
|
||||
)
|
||||
|
||||
(method (write param1 &tmp temp0)
|
||||
(if (not handle) (self open:))
|
||||
(= temp0 0)
|
||||
(while (< temp0 argc)
|
||||
(FPuts handle [param1 temp0])
|
||||
(++ temp0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (read param1 param2)
|
||||
(if (!= argc 2) (return 0))
|
||||
(if (not handle) (self open: 1))
|
||||
(return (FGets param1 param2 handle))
|
||||
)
|
||||
|
||||
(method (close)
|
||||
(if handle (FClose handle) (= handle 0))
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/GameFile.sh.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/GameFile.sh.sco
Normal file
Binary file not shown.
220
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Gauge.sc
Normal file
220
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Gauge.sc
Normal file
@@ -0,0 +1,220 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 987)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use SysWindow)
|
||||
|
||||
|
||||
(local
|
||||
newDText_2
|
||||
newDButton_2
|
||||
newDButton
|
||||
newDText
|
||||
newDButton_3
|
||||
newDButton_4
|
||||
newDButton_5
|
||||
[local7 40]
|
||||
)
|
||||
(class Gauge of Dialog
|
||||
(properties
|
||||
elements 0
|
||||
size 0
|
||||
text 0
|
||||
window 0
|
||||
theItem 0
|
||||
nsTop 0
|
||||
nsLeft 0
|
||||
nsBottom 0
|
||||
nsRight 0
|
||||
time 0
|
||||
timer 0
|
||||
busy 0
|
||||
description 0
|
||||
higher {up}
|
||||
lower {down}
|
||||
normal 7
|
||||
minimum 0
|
||||
maximum 15
|
||||
)
|
||||
|
||||
(method (init param1 &tmp temp0 temp1)
|
||||
(= window SysWindow)
|
||||
(self update: param1)
|
||||
((= newDButton (DButton new:))
|
||||
text: lower
|
||||
moveTo: 4 4
|
||||
setSize:
|
||||
)
|
||||
(self add: newDButton setSize:)
|
||||
((= newDText (DText new:))
|
||||
text: @local7
|
||||
moveTo: (+ (newDButton nsRight?) 4) 4
|
||||
font: 0
|
||||
setSize:
|
||||
)
|
||||
(self add: newDText setSize:)
|
||||
((= newDButton_2 (DButton new:))
|
||||
text: higher
|
||||
moveTo: (+ (newDText nsRight?) 4) 4
|
||||
setSize:
|
||||
)
|
||||
(self add: newDButton_2 setSize:)
|
||||
(= nsBottom (+ nsBottom 8))
|
||||
((= newDButton_3 (DButton new:))
|
||||
text: {OK}
|
||||
setSize:
|
||||
moveTo: 4 nsBottom
|
||||
)
|
||||
((= newDButton_4 (DButton new:))
|
||||
text: {Normal}
|
||||
setSize:
|
||||
moveTo: (+ (newDButton_3 nsRight?) 4) nsBottom
|
||||
)
|
||||
((= newDButton_5 (DButton new:))
|
||||
text: {Cancel}
|
||||
setSize:
|
||||
moveTo: (+ (newDButton_4 nsRight?) 4) nsBottom
|
||||
)
|
||||
(self
|
||||
add: newDButton_3 newDButton_4 newDButton_5
|
||||
setSize:
|
||||
)
|
||||
(= temp0 (- (- nsRight (newDButton_5 nsRight?)) 4))
|
||||
((= newDText_2 (DText new:))
|
||||
text: description
|
||||
font: gSmallFont
|
||||
setSize: (- nsRight 8)
|
||||
moveTo: 4 4
|
||||
)
|
||||
(= temp1 (+ (newDText_2 nsBottom?) 4))
|
||||
(self add: newDText_2)
|
||||
(newDButton_2 move: 0 temp1)
|
||||
(newDButton move: 0 temp1)
|
||||
(newDText move: 0 temp1)
|
||||
(newDButton_3 move: temp0 temp1)
|
||||
(newDButton_4 move: temp0 temp1)
|
||||
(newDButton_5 move: temp0 temp1)
|
||||
(self setSize: center: open: 4 15)
|
||||
)
|
||||
|
||||
(method (doit param1 &tmp temp0 temp1)
|
||||
(asm
|
||||
pushi #init
|
||||
pushi 1
|
||||
lsp param1
|
||||
self 6
|
||||
lap param1
|
||||
sat temp1
|
||||
code_01d4:
|
||||
pushi #update
|
||||
pushi 1
|
||||
lst temp1
|
||||
self 6
|
||||
pushi #draw
|
||||
pushi 0
|
||||
lal newDText
|
||||
send 4
|
||||
pushi #doit
|
||||
pushi 1
|
||||
lsl newDButton_3
|
||||
super Dialog, 6
|
||||
sat temp0
|
||||
push
|
||||
lal newDButton_2
|
||||
eq?
|
||||
bnt code_0201
|
||||
lst temp1
|
||||
pToa maximum
|
||||
lt?
|
||||
bnt code_01d4
|
||||
+at temp1
|
||||
jmp code_01d4
|
||||
code_0201:
|
||||
lst temp0
|
||||
lal newDButton
|
||||
eq?
|
||||
bnt code_0216
|
||||
lst temp1
|
||||
pToa minimum
|
||||
gt?
|
||||
bnt code_01d4
|
||||
-at temp1
|
||||
jmp code_01d4
|
||||
code_0216:
|
||||
lst temp0
|
||||
lal newDButton_3
|
||||
eq?
|
||||
bnt code_0224
|
||||
jmp code_024d
|
||||
jmp code_01d4
|
||||
code_0224:
|
||||
lst temp0
|
||||
lal newDButton_4
|
||||
eq?
|
||||
bnt code_0233
|
||||
pToa normal
|
||||
sat temp1
|
||||
jmp code_01d4
|
||||
code_0233:
|
||||
lst temp0
|
||||
ldi 0
|
||||
eq?
|
||||
bt code_0243
|
||||
lst temp0
|
||||
lal newDButton_5
|
||||
eq?
|
||||
bnt code_01d4
|
||||
code_0243:
|
||||
lap param1
|
||||
sat temp1
|
||||
jmp code_024d
|
||||
jmp code_01d4
|
||||
code_024d:
|
||||
pushi #dispose
|
||||
pushi 0
|
||||
self 4
|
||||
lat temp1
|
||||
ret
|
||||
)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(switch (pEvent type?)
|
||||
(evKEYBOARD
|
||||
(switch (pEvent message?)
|
||||
(KEY_NUMPAD4
|
||||
(pEvent claimed: 1)
|
||||
(return newDButton)
|
||||
)
|
||||
(KEY_RIGHT
|
||||
(pEvent claimed: 1)
|
||||
(return newDButton_2)
|
||||
)
|
||||
)
|
||||
)
|
||||
(evJOYSTICK
|
||||
(switch (pEvent message?)
|
||||
(JOY_LEFT
|
||||
(pEvent claimed: 1)
|
||||
(return newDButton)
|
||||
)
|
||||
(JOY_RIGHT
|
||||
(pEvent claimed: 1)
|
||||
(return newDButton_2)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(return (super handleEvent: pEvent))
|
||||
)
|
||||
|
||||
(method (update param1 &tmp temp0 temp1)
|
||||
(= temp1 (- maximum minimum))
|
||||
(= temp0 0)
|
||||
(while (< temp0 temp1)
|
||||
(StrAt @local7 temp0 (if (< temp0 param1) 6 else 7))
|
||||
(++ temp0)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Gauge.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Gauge.sco
Normal file
Binary file not shown.
842
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/GhostWander.sc
Normal file
842
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/GhostWander.sc
Normal file
@@ -0,0 +1,842 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 603)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
regHauntedHouse 0
|
||||
)
|
||||
(synonyms
|
||||
(room cottage)
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
local1
|
||||
)
|
||||
(class GhostWander of Motion
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
x 0
|
||||
y 0
|
||||
dx 0
|
||||
dy 0
|
||||
b-moveCnt 0
|
||||
b-i1 0
|
||||
b-i2 0
|
||||
b-di 0
|
||||
b-xAxis 0
|
||||
b-incr 0
|
||||
completed 0
|
||||
ux 0
|
||||
uy 0
|
||||
lx 0
|
||||
ly 0
|
||||
)
|
||||
|
||||
(method (init param1 theUx theUy theLx theLy &tmp theUx_2 theUy_2)
|
||||
(= ux theUx)
|
||||
(= uy theUy)
|
||||
(= lx theLx)
|
||||
(= ly theLy)
|
||||
(switch (/ (Random 10 29) 10)
|
||||
(1 (= theUx_2 ux))
|
||||
(2 (= theUx_2 lx))
|
||||
)
|
||||
(switch (/ (Random 10 29) 10)
|
||||
(1 (= theUy_2 uy))
|
||||
(2 (= theUy_2 ly))
|
||||
)
|
||||
(super init: param1 theUx_2 theUy_2)
|
||||
(super doit:)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(super doit:)
|
||||
(if (client isStopped:) (self moveDone:))
|
||||
)
|
||||
|
||||
(method (moveDone)
|
||||
(self init: client ux uy lx ly)
|
||||
)
|
||||
)
|
||||
|
||||
(instance theGhost of Act
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance regHauntedHouse of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(if initialized (return))
|
||||
(= global189 (= keep 1))
|
||||
(super init:)
|
||||
(if global100
|
||||
(theGhost
|
||||
view: 201
|
||||
illegalBits: 0
|
||||
ignoreActors: 1
|
||||
posn: 999 999
|
||||
init:
|
||||
)
|
||||
(if (not global134) (= global134 1))
|
||||
(self notify: global134)
|
||||
)
|
||||
(miserGhostMusic owner: self init:)
|
||||
(ladyGhostMusic owner: self init:)
|
||||
(lordGhostMusic owner: self init:)
|
||||
(boyGhostMusic owner: self init:)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(if (== keep 0) (= global189 0) (super dispose:))
|
||||
)
|
||||
|
||||
(method (newRoom newRoomNumber)
|
||||
(gSounds eachElementDo: #stop 0)
|
||||
(if (IsObject script) (script cue: -2 newRoomNumber))
|
||||
(= global135 0)
|
||||
(if (== newRoomNumber 17) (proc0_9))
|
||||
(super newRoom: newRoomNumber)
|
||||
)
|
||||
|
||||
(method (notify param1)
|
||||
(cond
|
||||
((and script (not argc)) (script cue:))
|
||||
((and script (< param1 0)) (script cue: param1 &rest))
|
||||
(else
|
||||
(self
|
||||
setScript:
|
||||
(switch (= global134 param1)
|
||||
(1 babyScript)
|
||||
(2 miserScript)
|
||||
(3 ladyScript)
|
||||
(4 lordScript)
|
||||
(5 boyScript)
|
||||
(else 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance babyScript of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(= global133 59)
|
||||
(= seconds 5)
|
||||
)
|
||||
(1
|
||||
(Print 603 0)
|
||||
(= seconds 10)
|
||||
)
|
||||
(2
|
||||
(if
|
||||
(and
|
||||
(!= gCurRoomNum 61)
|
||||
(!= gCurRoomNum 66)
|
||||
(!= gCurRoomNum 59)
|
||||
(!= gCurRoomNum 58)
|
||||
)
|
||||
(Print 603 1)
|
||||
)
|
||||
(-- state)
|
||||
(= seconds (Random 10 30))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cue)
|
||||
(if (not argc) (super cue:))
|
||||
)
|
||||
)
|
||||
|
||||
(instance miserScript of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState &tmp temp0 temp1 temp2)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(Load rsVIEW 200)
|
||||
(Load rsVIEW 201)
|
||||
(= global133 164)
|
||||
(= local0 1)
|
||||
(= seconds (Random 5 10))
|
||||
)
|
||||
(1
|
||||
(Print 603 2)
|
||||
(= cycles 5)
|
||||
)
|
||||
(2 (= seconds 3))
|
||||
(3
|
||||
(if
|
||||
(and
|
||||
(!= gCurRoomNum 66)
|
||||
(!= gCurRoomNum 61)
|
||||
(!= gCurRoomNum 58)
|
||||
)
|
||||
(Print 603 3)
|
||||
)
|
||||
(-- state)
|
||||
(= seconds (Random 40 99))
|
||||
)
|
||||
(4
|
||||
(= seconds 0)
|
||||
(= global135 1)
|
||||
(miserGhostMusic play:)
|
||||
(switch global133
|
||||
(67 (= temp1 145))
|
||||
(68 (= temp1 180))
|
||||
(64 (= temp1 145))
|
||||
)
|
||||
(switch local0
|
||||
(0 (= temp0 -33))
|
||||
(1 (= temp0 333))
|
||||
)
|
||||
(switch local0
|
||||
(0 (= temp2 333))
|
||||
(1 (= temp2 -33))
|
||||
)
|
||||
(theGhost
|
||||
view: 201
|
||||
illegalBits: 0
|
||||
posn: temp0 temp1
|
||||
ignoreActors: 1
|
||||
init:
|
||||
setLoop: local0
|
||||
setCycle: Walk
|
||||
setMotion: MoveTo temp2 temp1 self
|
||||
)
|
||||
(= global225 1)
|
||||
)
|
||||
(5 (= global225 0))
|
||||
(6
|
||||
(proc0_8)
|
||||
(Print 603 4)
|
||||
(gEgo put: 13 -1)
|
||||
(gGame changeScore: 2)
|
||||
(theGhost setLoop: setMotion: 0)
|
||||
(= seconds 2)
|
||||
)
|
||||
(7
|
||||
(theGhost
|
||||
view: 200
|
||||
cycleSpeed: 1
|
||||
setCel: 255
|
||||
setCycle: Beg self
|
||||
)
|
||||
)
|
||||
(8
|
||||
(= global225 0)
|
||||
(proc0_9)
|
||||
(regHauntedHouse notify: 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cue param1)
|
||||
(cond
|
||||
((not argc) (super cue:))
|
||||
((== param1 -1)
|
||||
(= seconds 0)
|
||||
(self
|
||||
changeState: (cond
|
||||
((< state 4) 4)
|
||||
((< state 6) 6)
|
||||
)
|
||||
)
|
||||
)
|
||||
((== param1 -2)
|
||||
(switch global133
|
||||
(164
|
||||
(= global133 64)
|
||||
(= local0 1)
|
||||
)
|
||||
(64
|
||||
(if (== local0 1)
|
||||
(= global133 68)
|
||||
else
|
||||
(= global133 164)
|
||||
)
|
||||
)
|
||||
(68
|
||||
(if (== local0 1)
|
||||
(= global133 67)
|
||||
else
|
||||
(= global133 64)
|
||||
)
|
||||
)
|
||||
(67
|
||||
(if (== local0 1)
|
||||
(= global133 167)
|
||||
else
|
||||
(= global133 68)
|
||||
)
|
||||
)
|
||||
(167
|
||||
(= global133 67)
|
||||
(= local0 0)
|
||||
)
|
||||
)
|
||||
(if (< state 6) (self changeState: 2))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp gInvSaidMe)
|
||||
(if
|
||||
(or
|
||||
(pEvent claimed?)
|
||||
(!= (pEvent type?) evSAID)
|
||||
(!= gCurRoomNum global133)
|
||||
(not (gCast contains: theGhost))
|
||||
(== global225 0)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(cond
|
||||
((Said 'look/chain') (Print 603 5))
|
||||
((Said 'get/chain') (Print 603 6))
|
||||
((Said 'deliver>')
|
||||
(cond
|
||||
(
|
||||
(or
|
||||
(not (= gInvSaidMe (gInv saidMe:)))
|
||||
(not (gEgo has: (gInv indexOf: gInvSaidMe)))
|
||||
)
|
||||
(pEvent claimed: 0)
|
||||
)
|
||||
((> (gEgo distanceTo: theGhost) 30) (proc0_13))
|
||||
((!= (gInv indexOf: gInvSaidMe) 13) (Print 603 7))
|
||||
(else (self cue: -1))
|
||||
)
|
||||
)
|
||||
((Said 'converse') (Print 603 8))
|
||||
((Said 'look') (Print 603 9))
|
||||
((Said 'kiss') (Print 603 10))
|
||||
((Said 'capture,get') (Print 603 11))
|
||||
((Said 'kill') (Print 603 12))
|
||||
((Said 'help') (Print 603 13))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance ladyScript of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(theGhost posn: (theGhost x?) (+ (theGhost y?) 1000))
|
||||
(Load rsVIEW 202)
|
||||
(Load rsVIEW 203)
|
||||
(= global133 60)
|
||||
(= global225 0)
|
||||
(= seconds 3)
|
||||
)
|
||||
(1
|
||||
(Print 603 14)
|
||||
(= seconds (Random 10 30))
|
||||
)
|
||||
(2 (= seconds 3))
|
||||
(3
|
||||
(if
|
||||
(and
|
||||
(!= gCurRoomNum 66)
|
||||
(!= gCurRoomNum 61)
|
||||
(!= gCurRoomNum 58)
|
||||
(!= gCurRoomNum 60)
|
||||
)
|
||||
(Print 603 15)
|
||||
)
|
||||
(-- state)
|
||||
(= seconds (Random 50 99))
|
||||
)
|
||||
(4
|
||||
(= global135 1)
|
||||
(= seconds 3)
|
||||
)
|
||||
(5
|
||||
(ladyGhostMusic play:)
|
||||
(= global225 1)
|
||||
(theGhost
|
||||
view: 202
|
||||
posn: 85 133
|
||||
ignoreActors: 1
|
||||
cycleSpeed: 3
|
||||
loop: 0
|
||||
cel: 0
|
||||
setCycle: End self
|
||||
init:
|
||||
)
|
||||
)
|
||||
(6
|
||||
(theGhost view: 203 setCycle: Fwd)
|
||||
)
|
||||
(7
|
||||
(proc0_8)
|
||||
(theGhost
|
||||
view: 202
|
||||
loop: 0
|
||||
setCel: 255
|
||||
setCycle: Beg self
|
||||
)
|
||||
)
|
||||
(8
|
||||
(= global225 0)
|
||||
(proc0_9)
|
||||
(= global133 67)
|
||||
(regHauntedHouse notify: 4)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cue param1)
|
||||
(cond
|
||||
((not argc) (super cue:))
|
||||
((== param1 -1)
|
||||
(= seconds 0)
|
||||
(self
|
||||
changeState: (cond
|
||||
((< state 4) 4)
|
||||
((< state 7) 7)
|
||||
)
|
||||
)
|
||||
)
|
||||
((and (== param1 -2) (< state 7)) (self changeState: 2))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance lordScript of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(theGhost posn: (theGhost x?) (+ (theGhost y?) 1000))
|
||||
(Load rsVIEW 204)
|
||||
(Load rsVIEW 206)
|
||||
(= seconds 3)
|
||||
)
|
||||
(1
|
||||
(Print 603 16)
|
||||
(= seconds (Random 3 5))
|
||||
)
|
||||
(2 (= seconds 3))
|
||||
(3
|
||||
(if
|
||||
(and
|
||||
(!= gCurRoomNum 66)
|
||||
(!= gCurRoomNum 61)
|
||||
(!= gCurRoomNum 58)
|
||||
)
|
||||
(Print 603 17)
|
||||
)
|
||||
(-- state)
|
||||
(= seconds (Random 40 99))
|
||||
)
|
||||
(4
|
||||
(= global135 1)
|
||||
(= seconds (Random 2 5))
|
||||
)
|
||||
(5
|
||||
(= seconds 0)
|
||||
(lordGhostMusic play:)
|
||||
(theGhost
|
||||
view: 204
|
||||
cel: 0
|
||||
posn: 150 160
|
||||
illegalBits: 0
|
||||
cycleSpeed: 1
|
||||
ignoreActors: 1
|
||||
setStep: 4 2
|
||||
setCycle: End self
|
||||
init:
|
||||
)
|
||||
)
|
||||
(6
|
||||
(theGhost
|
||||
view: 206
|
||||
loop: (Random 0 3)
|
||||
moveSpeed: 1
|
||||
cycleSpeed: 1
|
||||
setLoop: -1
|
||||
setCycle: Walk
|
||||
)
|
||||
(if (== gCurRoomNum 68)
|
||||
(theGhost setMotion: GhostWander 78 156 225 185)
|
||||
else
|
||||
(theGhost setMotion: GhostWander 75 130 225 175)
|
||||
)
|
||||
(= global225 1)
|
||||
(= seconds (Random 13 30))
|
||||
)
|
||||
(7
|
||||
(theGhost
|
||||
view: 204
|
||||
loop: 0
|
||||
setCel: 255
|
||||
setCycle: Beg self
|
||||
)
|
||||
)
|
||||
(8
|
||||
(= global225 0)
|
||||
(= state 4)
|
||||
(= seconds (Random 20 99))
|
||||
)
|
||||
(9
|
||||
(proc0_8)
|
||||
(Print 603 18)
|
||||
(theGhost setMotion: 0)
|
||||
(= seconds 3)
|
||||
)
|
||||
(10
|
||||
(= seconds 0)
|
||||
(gEgo put: 29 -1)
|
||||
(gGame changeScore: 2)
|
||||
(theGhost
|
||||
view: 204
|
||||
loop: 0
|
||||
setCel: 255
|
||||
setCycle: Beg self
|
||||
)
|
||||
)
|
||||
(11
|
||||
(proc0_9)
|
||||
(= global225 0)
|
||||
(regHauntedHouse notify: 5)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cue param1 param2)
|
||||
(cond
|
||||
((not argc) (super cue:))
|
||||
((== param1 -1)
|
||||
(= seconds 0)
|
||||
(self
|
||||
changeState: (cond
|
||||
((< state 4) 4)
|
||||
((< state 9) 9)
|
||||
)
|
||||
)
|
||||
)
|
||||
((== param1 -2)
|
||||
(= global133
|
||||
(if
|
||||
(and
|
||||
(<= 64 param2)
|
||||
(<= param2 68)
|
||||
(!= param2 66)
|
||||
(Random 0 1)
|
||||
)
|
||||
param2
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
(self changeState: 2)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp gInvSaidMe)
|
||||
(if
|
||||
(or
|
||||
(pEvent claimed?)
|
||||
(!= (pEvent type?) evSAID)
|
||||
(!= gCurRoomNum global133)
|
||||
(not global135)
|
||||
(== global225 0)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(cond
|
||||
((Said 'deliver>')
|
||||
(cond
|
||||
(
|
||||
(or
|
||||
(not (= gInvSaidMe (gInv saidMe:)))
|
||||
(not (gEgo has: (gInv indexOf: gInvSaidMe)))
|
||||
)
|
||||
(pEvent claimed: 0)
|
||||
)
|
||||
((> (gEgo distanceTo: theGhost) 30) (proc0_13))
|
||||
((!= (gInv indexOf: gInvSaidMe) 29) (Print 603 19))
|
||||
(else (self changeState: 9))
|
||||
)
|
||||
)
|
||||
((Said 'converse') (Print 603 20))
|
||||
((Said 'look') (Print 603 21))
|
||||
((Said 'kiss') (Print 603 10))
|
||||
((Said 'get,capture/*') (Print 603 22))
|
||||
((Said 'kill/*') (Print 603 12))
|
||||
((Said 'help/*') (Print 603 23))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance boyScript of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0 (= seconds 2))
|
||||
(1
|
||||
(theGhost posn: (theGhost x?) (+ (theGhost y?) 1000))
|
||||
(Load rsVIEW 207)
|
||||
(Load rsVIEW 208)
|
||||
(= global134 5)
|
||||
(= seconds 2)
|
||||
)
|
||||
(2
|
||||
(boyGhostMusic client: 0 stop:)
|
||||
(cond
|
||||
((== gCurRoomNum 60) (= global135 1) (= cycles 1))
|
||||
(
|
||||
(and
|
||||
(!= gCurRoomNum 66)
|
||||
(!= gCurRoomNum 61)
|
||||
(!= gCurRoomNum 58)
|
||||
)
|
||||
(= global135 1)
|
||||
(= seconds (Random 1 3))
|
||||
)
|
||||
)
|
||||
)
|
||||
(3
|
||||
(boyGhostMusic play:)
|
||||
(theGhost
|
||||
view: 207
|
||||
illegalBits: 0
|
||||
ignoreActors: 1
|
||||
setPri: -1
|
||||
loop: 0
|
||||
cel: 0
|
||||
setCycle: End self
|
||||
posn:
|
||||
(switch gCurRoomNum
|
||||
(60 159)
|
||||
(64 83)
|
||||
(65 255)
|
||||
(67 239)
|
||||
(68 165)
|
||||
)
|
||||
(switch gCurRoomNum
|
||||
(60 136)
|
||||
(64 124)
|
||||
(65 148)
|
||||
(67 136)
|
||||
(68 83)
|
||||
)
|
||||
init:
|
||||
)
|
||||
(if (== gCurRoomNum 60) (theGhost setPri: 10))
|
||||
)
|
||||
(4
|
||||
(if (== local1 0)
|
||||
(= local1 1)
|
||||
(Print 603 24)
|
||||
else
|
||||
(Print 603 25)
|
||||
)
|
||||
(theGhost
|
||||
view: 208
|
||||
moveSpeed: 0
|
||||
cycleSpeed: 0
|
||||
setLoop: -1
|
||||
setCycle: Walk
|
||||
)
|
||||
(switch gCurRoomNum
|
||||
(60
|
||||
(theGhost
|
||||
setPri: 10
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo 158 15
|
||||
)
|
||||
(= global133 63)
|
||||
)
|
||||
(64
|
||||
(theGhost setPri: 9 setMotion: MoveTo 0 143 self)
|
||||
(= global133 68)
|
||||
)
|
||||
(65
|
||||
(theGhost setMotion: MoveTo 240 190 self)
|
||||
(= global133 64)
|
||||
)
|
||||
(67
|
||||
(theGhost setMotion: MoveTo 300 136 self)
|
||||
(= global133 68)
|
||||
)
|
||||
(68
|
||||
(theGhost setMotion: MoveTo 193 73 self)
|
||||
(= global133 60)
|
||||
)
|
||||
)
|
||||
)
|
||||
(5
|
||||
(theGhost
|
||||
view: 207
|
||||
loop: 0
|
||||
setCel: 255
|
||||
setCycle: Beg self
|
||||
)
|
||||
)
|
||||
(6
|
||||
(= global135 0)
|
||||
(theGhost posn: (theGhost x?) (+ (theGhost y?) 1000))
|
||||
)
|
||||
(11
|
||||
(= global135 1)
|
||||
(Load rsVIEW 209)
|
||||
(boyGhostMusic play:)
|
||||
(theGhost
|
||||
view: 207
|
||||
loop: 1
|
||||
cel: 0
|
||||
posn: 167 117
|
||||
setPri: 8
|
||||
cycleSpeed: 1
|
||||
setCycle: End self
|
||||
illegalBits: 0
|
||||
ignoreActors:
|
||||
init:
|
||||
)
|
||||
)
|
||||
(12
|
||||
(theGhost
|
||||
view: 209
|
||||
loop: (Random 0 3)
|
||||
cycleSpeed: 1
|
||||
setCycle: Fwd
|
||||
)
|
||||
(= seconds 5)
|
||||
)
|
||||
(13
|
||||
(if (== gCurRoomNum 63) (Print 603 26))
|
||||
(= seconds 3)
|
||||
)
|
||||
(14
|
||||
(theGhost loop: (Random 0 3))
|
||||
(-- state)
|
||||
(= cycles (Random 30 60))
|
||||
)
|
||||
(21
|
||||
(proc0_8)
|
||||
(Print 603 27)
|
||||
(gEgo put: 30 -1)
|
||||
(gGame changeScore: 2)
|
||||
(= seconds 2)
|
||||
)
|
||||
(22
|
||||
(= global134 255)
|
||||
(theGhost
|
||||
view: 207
|
||||
loop: 1
|
||||
setCel: 255
|
||||
setCycle: Beg self
|
||||
init:
|
||||
)
|
||||
)
|
||||
(23
|
||||
(proc0_9)
|
||||
(theGhost dispose:)
|
||||
(regHauntedHouse notify: 255)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (cue param1)
|
||||
(cond
|
||||
((not argc) (super cue:))
|
||||
((== param1 -1)
|
||||
(= seconds 0)
|
||||
(self
|
||||
changeState: (cond
|
||||
((== gCurRoomNum 63) 11)
|
||||
((< state 11) 2)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp gInvSaidMe)
|
||||
(if
|
||||
(or
|
||||
(pEvent claimed?)
|
||||
(!= (pEvent type?) evSAID)
|
||||
(!= gCurRoomNum global133)
|
||||
(not global135)
|
||||
)
|
||||
(return)
|
||||
)
|
||||
(cond
|
||||
((Said 'deliver>')
|
||||
(cond
|
||||
(
|
||||
(or
|
||||
(not (= gInvSaidMe (gInv saidMe:)))
|
||||
(not (gEgo has: (gInv indexOf: gInvSaidMe)))
|
||||
)
|
||||
(pEvent claimed: 0)
|
||||
)
|
||||
((> (gEgo distanceTo: theGhost) 30) (proc0_13))
|
||||
((!= (gInv indexOf: gInvSaidMe) 30) (Print 603 28))
|
||||
((!= gCurRoomNum 63) (Print 603 29))
|
||||
(else (self changeState: 21))
|
||||
)
|
||||
)
|
||||
((Said 'converse') (Print 603 30))
|
||||
((Said 'kiss') (Print 603 10))
|
||||
((Said 'look/ghost[<boy]')
|
||||
(if (== gCurRoomNum 63)
|
||||
(Print 603 31)
|
||||
else
|
||||
(Print 603 32)
|
||||
)
|
||||
)
|
||||
((Said 'play/ghost[<boy]') (Print 603 33))
|
||||
((Said 'capture,get/ghost[<boy]') (Print 603 11))
|
||||
((Said 'kill/*') (Print 603 12))
|
||||
((Said 'help,save/*') (Print 603 34))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance lordGhostMusic of Sound
|
||||
(properties
|
||||
number 25
|
||||
)
|
||||
)
|
||||
|
||||
(instance miserGhostMusic of Sound
|
||||
(properties
|
||||
number 23
|
||||
)
|
||||
)
|
||||
|
||||
(instance ladyGhostMusic of Sound
|
||||
(properties
|
||||
number 24
|
||||
)
|
||||
)
|
||||
|
||||
(instance boyGhostMusic of Sound
|
||||
(properties
|
||||
number 26
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/GhostWander.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/GhostWander.sco
Normal file
Binary file not shown.
105
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Gull Region.sc
Normal file
105
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Gull Region.sc
Normal file
@@ -0,0 +1,105 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 504)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use Feature)
|
||||
|
||||
(public
|
||||
Gull_Region 0
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
[local1 4]
|
||||
local5
|
||||
)
|
||||
(instance gullBlock1 of Cage
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance Gull_Region of Rgn
|
||||
(properties
|
||||
name "Gull Region"
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(if (not global100)
|
||||
(gullBlock1
|
||||
top: -20
|
||||
bottom: 55
|
||||
left: -30
|
||||
right: 349
|
||||
init:
|
||||
)
|
||||
(= local0 2)
|
||||
(if
|
||||
(and (!= gCurRoomNum 7) (!= gCurRoomNum 40) global223)
|
||||
(= local5 1)
|
||||
(while (<= local5 local0)
|
||||
(= [local1 local5]
|
||||
((Act new:)
|
||||
x: (Random 1 280)
|
||||
y: (Random 1 30)
|
||||
xStep: 1
|
||||
yStep: 1
|
||||
cycleSpeed: 1
|
||||
observeBlocks: gullBlock1
|
||||
setPri: 0
|
||||
setCycle: Fwd
|
||||
setMotion: Wander 15
|
||||
view: (if (== gCurRoomNum 32) 325 else (Random 325 326))
|
||||
ignoreHorizon: 1
|
||||
illegalBits: 16384
|
||||
init:
|
||||
yourself:
|
||||
)
|
||||
)
|
||||
(++ local5)
|
||||
)
|
||||
)
|
||||
)
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp gInvSaidMe)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(if (not global100)
|
||||
(cond
|
||||
((Said '/gull,gull,bird>')
|
||||
(cond
|
||||
((Said 'look') (Print 504 0))
|
||||
((Said 'converse') (Print 504 1))
|
||||
((Said 'get,capture') (Print 504 2))
|
||||
((Said 'kiss') (Print 504 3))
|
||||
((Said 'feed') (Print 504 4))
|
||||
)
|
||||
)
|
||||
((Said 'deliver/*/gull,gull,bird')
|
||||
(cond
|
||||
((not (= gInvSaidMe (gInv saidMe:))) (Print 504 5))
|
||||
((gEgo has: (gInv indexOf: gInvSaidMe)) (Print 504 6))
|
||||
(else (proc0_17))
|
||||
)
|
||||
)
|
||||
((Said 'fling')
|
||||
(cond
|
||||
((not (= gInvSaidMe (gInv saidMe:))) (Print 504 7))
|
||||
((gEgo has: (gInv indexOf: gInvSaidMe)) (Print 504 8))
|
||||
(else (proc0_17))
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
(Print 504 9)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Gull Region.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Gull Region.sco
Normal file
Binary file not shown.
554
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Intro.sc
Normal file
554
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Intro.sc
Normal file
@@ -0,0 +1,554 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 120)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use User)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
intro 0
|
||||
introSc 1
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
[local1 17]
|
||||
local18
|
||||
local19
|
||||
local20
|
||||
local21
|
||||
local22
|
||||
[local23 7]
|
||||
local30
|
||||
local31
|
||||
[local32 202]
|
||||
)
|
||||
(instance openMusic of Sound
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance intro of Rm
|
||||
(properties
|
||||
horizon 40
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(Load rsVIEW 750)
|
||||
(Load rsVIEW 752)
|
||||
(Load rsVIEW 755)
|
||||
(Load rsVIEW 756)
|
||||
(Load rsVIEW 757)
|
||||
(Load rsVIEW 758)
|
||||
(Load rsVIEW 759)
|
||||
(Load rsVIEW 760)
|
||||
(Load rsVIEW 761)
|
||||
(Load rsVIEW 762)
|
||||
(Load rsVIEW 766)
|
||||
(Load rsVIEW 767)
|
||||
(Load rsVIEW 768)
|
||||
(Load rsVIEW 769)
|
||||
(Load rsPIC 201)
|
||||
(Load rsPIC 202)
|
||||
(Load rsPIC 203)
|
||||
(Load rsPIC 204)
|
||||
(Load rsPIC 205)
|
||||
(self setRegions: 520)
|
||||
(super init:)
|
||||
(= gIntroSc introSc)
|
||||
(gRoom setScript: introSc)
|
||||
(= gUserFont gSmallFont)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(cond
|
||||
(
|
||||
(and
|
||||
(== (pEvent type?) evKEYBOARD)
|
||||
(== (pEvent message?) KEY_F2)
|
||||
)
|
||||
(DoSound sndSET_SOUND (not (DoSound sndSET_SOUND)))
|
||||
)
|
||||
(
|
||||
(and
|
||||
(== (pEvent type?) evKEYBOARD)
|
||||
(== (pEvent message?) KEY_RETURN)
|
||||
)
|
||||
(gGame restart:)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (newRoom newRoomNumber)
|
||||
(if (IsObject local30) (local30 dispose:))
|
||||
(super newRoom: newRoomNumber)
|
||||
)
|
||||
)
|
||||
|
||||
(instance introSc of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState &tmp temp0)
|
||||
(gAddToPics dispose:)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(User canControl: 0 canInput: 0)
|
||||
(gRoom drawPic: 201)
|
||||
(openMusic number: 103 play:)
|
||||
(= local19
|
||||
((Act new:)
|
||||
view: 750
|
||||
loop: 0
|
||||
posn: 130 130
|
||||
stopUpd:
|
||||
init:
|
||||
yourself:
|
||||
)
|
||||
)
|
||||
(= local20
|
||||
((Act new:)
|
||||
view: 769
|
||||
loop: 2
|
||||
posn: 140 119
|
||||
stopUpd:
|
||||
init:
|
||||
yourself:
|
||||
)
|
||||
)
|
||||
(= local21
|
||||
((Act new:)
|
||||
view: 760
|
||||
posn: 220 148
|
||||
loop: 1
|
||||
cel: 5
|
||||
stopUpd:
|
||||
init:
|
||||
yourself:
|
||||
)
|
||||
)
|
||||
(= local18
|
||||
((Act new:)
|
||||
view: 759
|
||||
loop: 1
|
||||
posn: 212 135
|
||||
stopUpd:
|
||||
init:
|
||||
yourself:
|
||||
)
|
||||
)
|
||||
(= local22
|
||||
((Act new:)
|
||||
view: 767
|
||||
posn: 48 120
|
||||
xStep: 4
|
||||
yStep: 2
|
||||
loop: 0
|
||||
cycleSpeed: 0
|
||||
cel: 3
|
||||
stopUpd:
|
||||
init:
|
||||
yourself:
|
||||
)
|
||||
)
|
||||
((View new:)
|
||||
view: 768
|
||||
posn: 158 64
|
||||
setPri: 0
|
||||
ignoreActors:
|
||||
addToPic:
|
||||
)
|
||||
((View new:)
|
||||
view: 769
|
||||
loop: 3
|
||||
posn: 48 139
|
||||
setPri: 0
|
||||
ignoreActors:
|
||||
addToPic:
|
||||
)
|
||||
(Timer setReal: self 2)
|
||||
)
|
||||
(1
|
||||
(= local30 (Print 120 0 67 -1 10 70 300 88))
|
||||
(Timer setReal: self 10)
|
||||
)
|
||||
(2
|
||||
(local19 setCycle: Walk setMotion: MoveTo 145 140 self)
|
||||
)
|
||||
(3
|
||||
(local19 setMotion: MoveTo 48 144 self)
|
||||
)
|
||||
(4
|
||||
(local22 hide:)
|
||||
(local19 setMotion: MoveTo 130 140 self)
|
||||
)
|
||||
(5
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(local19 setMotion: MoveTo 134 131 self)
|
||||
)
|
||||
(6
|
||||
(local19 setLoop: 0)
|
||||
(= local30 (Print 120 1 70 300 67 -1 12 88))
|
||||
(= seconds 11)
|
||||
)
|
||||
(7
|
||||
(local19 view: 750 setLoop: 2 cel: 255 setCycle: End self)
|
||||
)
|
||||
(8
|
||||
(local22
|
||||
show:
|
||||
posn: (+ (local19 x?) 10) (- (local19 y?) 20)
|
||||
setCycle: Rev
|
||||
moveSpeed: 1
|
||||
ignoreActors:
|
||||
illegalBits: 0
|
||||
setMotion: MoveTo 220 70 self
|
||||
)
|
||||
(local21
|
||||
view: 761
|
||||
setLoop: 0
|
||||
setCycle: Walk
|
||||
setMotion: MoveTo 275 145
|
||||
)
|
||||
(local18
|
||||
view: 761
|
||||
setLoop: 1
|
||||
setCycle: Walk
|
||||
setMotion: MoveTo 275 135
|
||||
)
|
||||
)
|
||||
(9
|
||||
(local19 setLoop: 3 setCycle: End stopKing)
|
||||
(= seconds 1)
|
||||
)
|
||||
(10
|
||||
(local22 stopUpd:)
|
||||
(= seconds 1)
|
||||
)
|
||||
(11
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(gCast eachElementDo: #hide)
|
||||
(gRoom drawPic: 202)
|
||||
(local22
|
||||
show:
|
||||
setLoop: 1
|
||||
setCel: 0
|
||||
posn: 105 99
|
||||
ignoreActors:
|
||||
setStep: 4 2
|
||||
moveSpeed: 0
|
||||
cycleSpeed: 0
|
||||
setCycle: Rev
|
||||
setMotion: MoveTo 275 120
|
||||
)
|
||||
(= local30 (Print 120 2 30 1 67 -1 150 88))
|
||||
(Timer setReal: self 3)
|
||||
)
|
||||
(12
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(= local30 (Print 120 3 67 -1 150 88))
|
||||
(Timer setReal: self 3)
|
||||
)
|
||||
(13
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(local22 hide:)
|
||||
(= local31
|
||||
((Act new:)
|
||||
view: 769
|
||||
loop: 0
|
||||
posn: 160 114
|
||||
cycleSpeed: 5
|
||||
cel: 255
|
||||
setCycle: End stopKing
|
||||
init:
|
||||
yourself:
|
||||
)
|
||||
)
|
||||
(= local30 (Print 120 4 67 -1 140 88))
|
||||
(Timer setReal: self 7)
|
||||
)
|
||||
(14
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(local31 dispose:)
|
||||
(gRoom drawPic: 201)
|
||||
(local19
|
||||
cycleSpeed: 0
|
||||
view: 769
|
||||
posn: 135 130
|
||||
setLoop: 1
|
||||
cel: 255
|
||||
setCycle: End stopKing
|
||||
ignoreActors:
|
||||
show:
|
||||
)
|
||||
(local18
|
||||
show:
|
||||
view: 759
|
||||
setLoop: 1
|
||||
xStep: 2
|
||||
setCycle: Walk
|
||||
setMotion: MoveTo 227 136
|
||||
)
|
||||
(local21
|
||||
show:
|
||||
view: 760
|
||||
loop: 1
|
||||
xStep: 2
|
||||
setCycle: Walk
|
||||
setMotion: MoveTo 216 147 self
|
||||
)
|
||||
(local20
|
||||
show:
|
||||
view: 769
|
||||
cycleSpeed: 4
|
||||
setLoop: 2
|
||||
setCycle: End stopQueen
|
||||
)
|
||||
((View new:)
|
||||
view: 768
|
||||
posn: 158 64
|
||||
ignoreActors:
|
||||
addToPic:
|
||||
)
|
||||
((View new:)
|
||||
view: 769
|
||||
loop: 3
|
||||
posn: 48 139
|
||||
setPri: 0
|
||||
ignoreActors:
|
||||
addToPic:
|
||||
)
|
||||
(local22
|
||||
show:
|
||||
setCel: 3
|
||||
setLoop: 0
|
||||
posn: 300 144
|
||||
stopUpd:
|
||||
)
|
||||
(= local30
|
||||
(Print 120 5 80 {King Graham} 67 53 155 88)
|
||||
)
|
||||
)
|
||||
(15
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(Timer setReal: self 3)
|
||||
)
|
||||
(16
|
||||
(gCast eachElementDo: #hide)
|
||||
(gRoom drawPic: 203)
|
||||
(local22 show: setCel: 0 setLoop: 2 posn: 180 99 stopUpd:)
|
||||
(= local30 (Print 120 6 67 -1 152 88))
|
||||
(Timer setReal: self 5)
|
||||
)
|
||||
(17
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(local22 dispose:)
|
||||
(gRoom drawPic: 204)
|
||||
((View new:)
|
||||
view: 752
|
||||
loop: 2
|
||||
cel: 0
|
||||
posn: 123 89
|
||||
ignoreActors:
|
||||
setPri: 0
|
||||
addToPic:
|
||||
)
|
||||
((View new:)
|
||||
view: 752
|
||||
loop: 2
|
||||
cel: 0
|
||||
posn: 204 89
|
||||
ignoreActors:
|
||||
setPri: 0
|
||||
addToPic:
|
||||
)
|
||||
((Prop new:)
|
||||
view: 752
|
||||
loop: 4
|
||||
posn: 123 63
|
||||
cycleSpeed: 0
|
||||
setCycle: Fwd
|
||||
init:
|
||||
yourself:
|
||||
)
|
||||
((Prop new:)
|
||||
view: 752
|
||||
loop: 4
|
||||
posn: 204 63
|
||||
cycleSpeed: 0
|
||||
setCycle: Rev
|
||||
init:
|
||||
yourself:
|
||||
)
|
||||
((View new:)
|
||||
view: 752
|
||||
loop: 3
|
||||
posn: 47 139
|
||||
ignoreActors:
|
||||
addToPic:
|
||||
)
|
||||
(local19
|
||||
show:
|
||||
setPri: 15
|
||||
view: 752
|
||||
setLoop: 0
|
||||
setCel: 0
|
||||
posn: 162 144
|
||||
stopUpd:
|
||||
)
|
||||
(local20
|
||||
show:
|
||||
view: 756
|
||||
setPri: 9
|
||||
setLoop: 1
|
||||
setCel: 0
|
||||
ignoreActors:
|
||||
posn: 85 177
|
||||
stopUpd:
|
||||
)
|
||||
(local21
|
||||
show:
|
||||
view: 756
|
||||
setPri: 9
|
||||
loop: 0
|
||||
cel: 0
|
||||
ignoreActors:
|
||||
posn: 228 176
|
||||
stopUpd:
|
||||
)
|
||||
(local18
|
||||
show:
|
||||
view: 756
|
||||
setPri: 10
|
||||
loop: 2
|
||||
cel: 0
|
||||
posn: 251 177
|
||||
stopUpd:
|
||||
)
|
||||
(= local0 (Timer setReal: checkHang 15))
|
||||
(self cue:)
|
||||
)
|
||||
(18
|
||||
(if (!= (openMusic prevSignal?) -1)
|
||||
(-- state)
|
||||
(Timer setReal: self 2)
|
||||
else
|
||||
(Timer setReal: self 5)
|
||||
(if (IsObject local0) (local0 dispose:))
|
||||
)
|
||||
)
|
||||
(19
|
||||
(gCast eachElementDo: #hide)
|
||||
(gRoom drawPic: 205)
|
||||
(openMusic dispose:)
|
||||
((ScriptID 520 1) play:)
|
||||
(local19
|
||||
show:
|
||||
view: 752
|
||||
setLoop: 1
|
||||
setCel: 0
|
||||
posn: 162 119
|
||||
setPri: 8
|
||||
)
|
||||
(= local30 (Print 120 7 67 -1 134 88))
|
||||
(Timer setReal: self 7)
|
||||
)
|
||||
(20
|
||||
(proc0_21)
|
||||
(gRoom drawPic: 204)
|
||||
(gCast eachElementDo: #show)
|
||||
((View new:)
|
||||
view: 752
|
||||
loop: 3
|
||||
posn: 47 139
|
||||
ignoreActors:
|
||||
addToPic:
|
||||
)
|
||||
((View new:)
|
||||
view: 752
|
||||
loop: 2
|
||||
cel: 0
|
||||
posn: 123 89
|
||||
ignoreActors:
|
||||
setPri: 0
|
||||
addToPic:
|
||||
)
|
||||
((View new:)
|
||||
view: 752
|
||||
loop: 2
|
||||
cel: 0
|
||||
posn: 204 89
|
||||
ignoreActors:
|
||||
setPri: 0
|
||||
addToPic:
|
||||
)
|
||||
(local19
|
||||
view: 752
|
||||
setPri: 15
|
||||
setLoop: 0
|
||||
setCel: 0
|
||||
posn: 163 137
|
||||
stopUpd:
|
||||
)
|
||||
(local20 setCel: 255 stopUpd:)
|
||||
(local21 setCel: 255 stopUpd:)
|
||||
(local18
|
||||
setStep: 4 -1
|
||||
setCycle: End
|
||||
setMotion: MoveTo 340 176
|
||||
)
|
||||
(= local30 (Print 120 8 67 -1 10 70 300 88))
|
||||
(Timer setReal: self 4)
|
||||
)
|
||||
(21
|
||||
(= global205 1)
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(gRoom newRoom: 221)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance stopKing of Script
|
||||
(properties)
|
||||
|
||||
(method (cue)
|
||||
(local19 stopUpd:)
|
||||
)
|
||||
)
|
||||
|
||||
(instance stopQueen of Script
|
||||
(properties)
|
||||
|
||||
(method (cue)
|
||||
(local20 stopUpd:)
|
||||
)
|
||||
)
|
||||
|
||||
(instance stopSon of Script
|
||||
(properties)
|
||||
|
||||
(method (cue)
|
||||
(local21 stopUpd:)
|
||||
)
|
||||
)
|
||||
|
||||
(instance stopRosella of Script
|
||||
(properties)
|
||||
|
||||
(method (cue)
|
||||
(local18 stopUpd:)
|
||||
)
|
||||
)
|
||||
|
||||
(instance checkHang of Script
|
||||
(properties)
|
||||
|
||||
(method (cue)
|
||||
(gTimers eachElementDo: #dispose 84)
|
||||
(introSc changeState: 19)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Intro.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Intro.sco
Normal file
Binary file not shown.
177
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/InvI.sc
Normal file
177
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/InvI.sc
Normal file
@@ -0,0 +1,177 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 995)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use SysWindow)
|
||||
(use Obj)
|
||||
|
||||
|
||||
(local
|
||||
newDButton
|
||||
)
|
||||
(class InvI of Obj
|
||||
(properties
|
||||
said 0
|
||||
description 0
|
||||
owner 0
|
||||
view 0
|
||||
loop 0
|
||||
cel 0
|
||||
script 0
|
||||
)
|
||||
|
||||
(method (showSelf)
|
||||
(IconPrint (if description else name) view loop cel)
|
||||
)
|
||||
|
||||
(method (saidMe)
|
||||
(Said said)
|
||||
)
|
||||
|
||||
(method (ownedBy param1)
|
||||
(return (== owner param1))
|
||||
)
|
||||
|
||||
(method (moveTo theOwner)
|
||||
(= owner theOwner)
|
||||
(return self)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(if script (script changeState: newState))
|
||||
)
|
||||
)
|
||||
|
||||
(class Inv of Set
|
||||
(properties
|
||||
elements 0
|
||||
size 0
|
||||
carrying {You are carrying:}
|
||||
empty {You are carrying nothing!}
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(= gInv self)
|
||||
)
|
||||
|
||||
(method (showSelf param1)
|
||||
(invD text: carrying doit: param1)
|
||||
)
|
||||
|
||||
(method (saidMe)
|
||||
(self firstTrue: #saidMe)
|
||||
)
|
||||
|
||||
(method (ownedBy param1)
|
||||
(self firstTrue: #ownedBy param1)
|
||||
)
|
||||
)
|
||||
|
||||
(instance invD of Dialog
|
||||
(properties)
|
||||
|
||||
(method (init param1 &tmp temp0 temp1 temp2 temp3 newDText gInvFirst temp6)
|
||||
(= temp2 (= temp0 (= temp1 4)))
|
||||
(= temp3 0)
|
||||
(= gInvFirst (gInv first:))
|
||||
(while gInvFirst
|
||||
(if
|
||||
((= temp6 (NodeValue gInvFirst)) ownedBy: param1)
|
||||
(++ temp3)
|
||||
(self
|
||||
add:
|
||||
((= newDText (DText new:))
|
||||
value: temp6
|
||||
text: (temp6 name?)
|
||||
nsLeft: temp0
|
||||
nsTop: temp1
|
||||
state: 3
|
||||
font: gSmallFont
|
||||
setSize:
|
||||
yourself:
|
||||
)
|
||||
)
|
||||
(if
|
||||
(< temp2 (- (newDText nsRight?) (newDText nsLeft?)))
|
||||
(= temp2 (- (newDText nsRight?) (newDText nsLeft?)))
|
||||
)
|
||||
(if
|
||||
(>
|
||||
(= temp1
|
||||
(+ temp1 (- (newDText nsBottom?) (newDText nsTop?)) 1)
|
||||
)
|
||||
140
|
||||
)
|
||||
(= temp1 4)
|
||||
(= temp0 (+ temp0 temp2 10))
|
||||
(= temp2 0)
|
||||
)
|
||||
)
|
||||
(= gInvFirst (gInv next: gInvFirst))
|
||||
)
|
||||
(if (not temp3) (self dispose:) (return 0))
|
||||
(= window SysWindow)
|
||||
(self setSize:)
|
||||
(= newDButton (DButton new:))
|
||||
(newDButton
|
||||
text: {OK}
|
||||
setSize:
|
||||
moveTo: (- nsRight (+ 4 (newDButton nsRight?))) nsBottom
|
||||
)
|
||||
(newDButton
|
||||
move: (- (newDButton nsLeft?) (newDButton nsRight?)) 0
|
||||
)
|
||||
(self add: newDButton setSize: center:)
|
||||
(return temp3)
|
||||
)
|
||||
|
||||
(method (doit param1 &tmp theNewDButton)
|
||||
(if (not (self init: param1))
|
||||
(Print (gInv empty?))
|
||||
(return)
|
||||
)
|
||||
(self open: 4 15)
|
||||
(= theNewDButton newDButton)
|
||||
(repeat
|
||||
(if
|
||||
(or
|
||||
(not (= theNewDButton (super doit: theNewDButton)))
|
||||
(== theNewDButton -1)
|
||||
(== theNewDButton newDButton)
|
||||
)
|
||||
(break)
|
||||
)
|
||||
((theNewDButton value?) showSelf:)
|
||||
)
|
||||
(self dispose:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp pEventMessage pEventType)
|
||||
(= pEventMessage (pEvent message?))
|
||||
(switch (= pEventType (pEvent type?))
|
||||
(4
|
||||
(switch pEventMessage
|
||||
(KEY_UP (= pEventMessage 3840))
|
||||
(KEY_NUMPAD2
|
||||
(= pEventMessage 9)
|
||||
)
|
||||
)
|
||||
)
|
||||
(64
|
||||
(switch pEventMessage
|
||||
(JOY_UP
|
||||
(= pEventMessage 3840)
|
||||
(= pEventType 4)
|
||||
)
|
||||
(JOY_DOWN
|
||||
(= pEventMessage 9)
|
||||
(= pEventType 4)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
(pEvent type: pEventType message: pEventMessage)
|
||||
(super handleEvent: pEvent)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/InvI.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/InvI.sco
Normal file
Binary file not shown.
198
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Jump.sc
Normal file
198
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Jump.sc
Normal file
@@ -0,0 +1,198 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 991)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Cycle)
|
||||
|
||||
|
||||
(class Jump of Motion
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
x 20000
|
||||
y 20000
|
||||
dx 0
|
||||
dy 0
|
||||
b-moveCnt 0
|
||||
b-i1 0
|
||||
b-i2 0
|
||||
b-di 0
|
||||
b-xAxis 0
|
||||
b-incr 0
|
||||
completed 0
|
||||
gx 0
|
||||
gy 3
|
||||
xStep 20000
|
||||
yStep 0
|
||||
signal $0000
|
||||
illegalBits $0000
|
||||
waitApogeeX 1
|
||||
waitApogeeY 1
|
||||
)
|
||||
|
||||
(method (init theClient theCaller &tmp clientHeading)
|
||||
(= client theClient)
|
||||
(if (== argc 2) (= caller theCaller))
|
||||
(= illegalBits (client illegalBits?))
|
||||
(= signal (client signal?))
|
||||
(client illegalBits: 0 setPri:)
|
||||
(if (== xStep 20000)
|
||||
(= xStep
|
||||
(cond
|
||||
(
|
||||
(or
|
||||
(> (= clientHeading (client heading?)) 330)
|
||||
(< clientHeading 30)
|
||||
(and (< 150 clientHeading) (< clientHeading 210))
|
||||
)
|
||||
0
|
||||
)
|
||||
((< clientHeading 180) (client xStep?))
|
||||
(else (- (client xStep?)))
|
||||
)
|
||||
)
|
||||
)
|
||||
(if (not (if waitApogeeX (< (* xStep gx) 0)))
|
||||
(= waitApogeeX 0)
|
||||
)
|
||||
(if (not (if waitApogeeY (< (* yStep gy) 0)))
|
||||
(= waitApogeeY 0)
|
||||
)
|
||||
(self setTest:)
|
||||
)
|
||||
|
||||
(method (doit &tmp theXStep theYStep)
|
||||
(client
|
||||
x: (+ (client x?) xStep)
|
||||
y: (+ (client y?) yStep)
|
||||
)
|
||||
(= theXStep xStep)
|
||||
(= theYStep yStep)
|
||||
(= xStep (+ xStep gx))
|
||||
(= yStep (+ yStep gy))
|
||||
(if
|
||||
(and
|
||||
(not waitApogeeX)
|
||||
(!= x 20000)
|
||||
(<= 0 (* dx (- (client x?) x)))
|
||||
)
|
||||
(client x: x)
|
||||
(self moveDone:)
|
||||
(return)
|
||||
)
|
||||
(if
|
||||
(and
|
||||
(not waitApogeeY)
|
||||
(!= y 20000)
|
||||
(<= 0 (* dy (- (client y?) y)))
|
||||
)
|
||||
(client y: y)
|
||||
(self moveDone:)
|
||||
(return)
|
||||
)
|
||||
(if (<= (* theXStep xStep) 0)
|
||||
(= waitApogeeX 0)
|
||||
(self setTest:)
|
||||
)
|
||||
(if (<= (* theYStep yStep) 0)
|
||||
(= waitApogeeY 0)
|
||||
(self setTest:)
|
||||
)
|
||||
)
|
||||
|
||||
(method (moveDone)
|
||||
(client illegalBits: illegalBits signal: signal)
|
||||
(if caller (= global58 1) (= completed 1))
|
||||
)
|
||||
|
||||
(method (triedToMove)
|
||||
(return 1)
|
||||
)
|
||||
|
||||
(method (motionCue)
|
||||
(client mover: 0)
|
||||
(if (and completed (IsObject caller)) (caller cue:))
|
||||
(self dispose:)
|
||||
)
|
||||
|
||||
(method (setTest)
|
||||
(= dx
|
||||
(if
|
||||
(or
|
||||
(> (client x?) x)
|
||||
(and (== (client x?) x) (> xStep 0))
|
||||
)
|
||||
-1
|
||||
else
|
||||
1
|
||||
)
|
||||
)
|
||||
(= dy
|
||||
(if
|
||||
(or
|
||||
(> (client y?) y)
|
||||
(and (== (client y?) y) (> yStep 0))
|
||||
)
|
||||
-1
|
||||
else
|
||||
1
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class JumpTo of Jump
|
||||
(properties
|
||||
client 0
|
||||
caller 0
|
||||
x 20000
|
||||
y 20000
|
||||
dx 0
|
||||
dy 0
|
||||
b-moveCnt 0
|
||||
b-i1 0
|
||||
b-i2 0
|
||||
b-di 0
|
||||
b-xAxis 0
|
||||
b-incr 0
|
||||
completed 0
|
||||
gx 0
|
||||
gy 3
|
||||
xStep 20000
|
||||
yStep 0
|
||||
signal $0000
|
||||
illegalBits $0000
|
||||
waitApogeeX 1
|
||||
waitApogeeY 1
|
||||
)
|
||||
|
||||
(method (init theClient theX theY param4 &tmp temp0 temp1 [temp2 52])
|
||||
(= client theClient)
|
||||
(= x theX)
|
||||
(= y theY)
|
||||
(if
|
||||
(and (== x (theClient x?)) (== y (theClient y?)))
|
||||
(= illegalBits (client illegalBits?))
|
||||
(= signal (client signal?))
|
||||
(self moveDone:)
|
||||
(return)
|
||||
)
|
||||
(= temp0 (- x (theClient x?)))
|
||||
(= temp1 (- y (theClient y?)))
|
||||
(SetJump self temp0 temp1 gy)
|
||||
(if (not temp0) (= x 20000))
|
||||
(if (not temp1) (= y 20000))
|
||||
(switch argc
|
||||
(3 (super init: theClient))
|
||||
(4
|
||||
(super init: theClient param4)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (moveDone)
|
||||
(if (!= x 20000) (client x: x))
|
||||
(if (!= y 20000) (client y: y))
|
||||
(super moveDone:)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Jump.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Jump.sco
Normal file
Binary file not shown.
27
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/KQ4Music.sc
Normal file
27
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/KQ4Music.sc
Normal file
@@ -0,0 +1,27 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 520)
|
||||
(include sci.sh)
|
||||
(use Sound)
|
||||
(use Game)
|
||||
|
||||
(public
|
||||
kq4Intro 0
|
||||
KQ4MUSIC 1
|
||||
)
|
||||
|
||||
(instance KQ4MUSIC of Sound
|
||||
(properties
|
||||
number 104
|
||||
)
|
||||
)
|
||||
|
||||
(instance kq4Intro of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(if initialized (return))
|
||||
(= keep 1)
|
||||
(super init:)
|
||||
((ScriptID 520 1) owner: kq4Intro init:)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/KQ4Music.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/KQ4Music.sco
Normal file
Binary file not shown.
4293
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Main.sc
Normal file
4293
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Main.sc
Normal file
File diff suppressed because it is too large
Load Diff
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Main.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Main.sco
Normal file
Binary file not shown.
48
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MeadReg.sc
Normal file
48
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MeadReg.sc
Normal file
@@ -0,0 +1,48 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 506)
|
||||
(include sci.sh)
|
||||
(use Class_255_0)
|
||||
(use Game)
|
||||
|
||||
(public
|
||||
meadReg 0
|
||||
)
|
||||
(synonyms
|
||||
(flora flora flora blossom flora flora)
|
||||
)
|
||||
|
||||
(local
|
||||
[local0 7]
|
||||
)
|
||||
(instance meadReg of Rgn
|
||||
(properties)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(cond
|
||||
((Said 'look>')
|
||||
(cond
|
||||
((Said '/bush') (Print 506 0))
|
||||
((Said '/boulder') (Print 506 1))
|
||||
((or (Said '<down') (Said '/dirt,down')) (Print 506 2))
|
||||
((Said '/grass') (Print 506 3))
|
||||
((Said '/flora') (Print 506 4))
|
||||
((Said '/forest') (Print 506 5))
|
||||
)
|
||||
)
|
||||
((Said 'climb>')
|
||||
(cond
|
||||
((Said '/forest') (Print 506 6))
|
||||
((Said '/boulder') (Print 506 7))
|
||||
)
|
||||
)
|
||||
((Said 'get/flora,flora') (Print 506 8))
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MeadReg.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MeadReg.sco
Normal file
Binary file not shown.
207
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MenuBar.sc
Normal file
207
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MenuBar.sc
Normal file
@@ -0,0 +1,207 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 997)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Gauge)
|
||||
(use Sound)
|
||||
(use InvI)
|
||||
(use User)
|
||||
|
||||
|
||||
(class TheMenuBar of Class_255_0
|
||||
(properties
|
||||
state $0000
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(AddMenu { \01_} {About KQ4`^a:Help`#1})
|
||||
(AddMenu
|
||||
{ File_}
|
||||
{Save`#5:Restore`#7:-!:Restart`#9:Quit`^q}
|
||||
)
|
||||
(AddMenu { Action_} {Pause`^p:Inventory`^i:Retype`#3})
|
||||
(AddMenu
|
||||
{ Speed_}
|
||||
{Speed`^s:-!:Faster`+:Normal`=:Slower`-}
|
||||
)
|
||||
(AddMenu { Sound_} {Volume`^v:-!:Turn Off=1`#2})
|
||||
(SetMenu
|
||||
1283
|
||||
110
|
||||
(if (DoSound sndSET_SOUND) {Turn Off} else {Turn On})
|
||||
)
|
||||
(SetMenu 513 109 'save[/game]')
|
||||
(SetMenu 514 109 'restore[/game]')
|
||||
(SetMenu 516 109 'restart[/game]')
|
||||
(SetMenu 517 109 'quit[/game]')
|
||||
(SetMenu 769 109 'pause[/game]')
|
||||
(SetMenu 770 109 'inventory')
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp temp0 temp1 [temp2 4] temp6 [temp7 288])
|
||||
(switch (= temp0 (super handleEvent: pEvent))
|
||||
(257
|
||||
(= temp6 (Sound pause: 1))
|
||||
(Print
|
||||
(Format @temp7 997 0 global28)
|
||||
80
|
||||
{A Ken Williams Production}
|
||||
33
|
||||
gSmallFont
|
||||
30
|
||||
1
|
||||
67
|
||||
20
|
||||
10
|
||||
70
|
||||
260
|
||||
)
|
||||
(Sound pause: temp6)
|
||||
)
|
||||
(258
|
||||
(= temp6 (Sound pause: 1))
|
||||
(Print 997 1 33 gSmallFont)
|
||||
(Sound pause: temp6)
|
||||
)
|
||||
(513
|
||||
(if (not (proc0_12 1028))
|
||||
(Print 997 2)
|
||||
else
|
||||
(gGame save:)
|
||||
)
|
||||
)
|
||||
(514
|
||||
(if (not (proc0_12 1028))
|
||||
(Print 997 3)
|
||||
else
|
||||
(gGame restore:)
|
||||
)
|
||||
)
|
||||
(516
|
||||
(= temp6 (Sound pause: 1))
|
||||
(if
|
||||
(Print
|
||||
997
|
||||
4
|
||||
82
|
||||
100
|
||||
0
|
||||
0
|
||||
33
|
||||
0
|
||||
81
|
||||
{ Restart_}
|
||||
1
|
||||
81
|
||||
{Continue}
|
||||
0
|
||||
)
|
||||
(gGame restart:)
|
||||
)
|
||||
(Sound pause: temp6)
|
||||
)
|
||||
(517
|
||||
(= temp6 (Sound pause: 1))
|
||||
(= gQuit
|
||||
(Print
|
||||
997
|
||||
5
|
||||
82
|
||||
100
|
||||
0
|
||||
0
|
||||
33
|
||||
0
|
||||
81
|
||||
{____Quit____}
|
||||
1
|
||||
81
|
||||
{ Continue_}
|
||||
0
|
||||
)
|
||||
)
|
||||
(Sound pause: temp6)
|
||||
)
|
||||
(769
|
||||
(= temp6 (Sound pause: 1))
|
||||
(Print 997 6 33 0 30 1 81 { Continue_} 0)
|
||||
(Sound pause: temp6)
|
||||
)
|
||||
(770
|
||||
(if (not (proc0_12 2348))
|
||||
(Print 997 7)
|
||||
else
|
||||
(= temp6 (Sound pause: 1))
|
||||
(Inv showSelf: gEgo)
|
||||
(Sound pause: temp6)
|
||||
)
|
||||
)
|
||||
(771
|
||||
(pEvent claimed: 0 type: 4 message: (User echo?))
|
||||
)
|
||||
(1025
|
||||
(if (not (proc0_12 1850))
|
||||
(Print 997 8)
|
||||
else
|
||||
(= temp1
|
||||
((Gauge new:)
|
||||
description:
|
||||
{Use the mouse or the left and right arrow keys to change the speed of moving characters.}
|
||||
text: {Animation Speed}
|
||||
minimum: 0
|
||||
normal: 10
|
||||
maximum: 15
|
||||
higher: {Faster}
|
||||
lower: {Slower}
|
||||
doit: (- 16 gSpeed)
|
||||
)
|
||||
)
|
||||
(gGame setSpeed: (- 16 temp1))
|
||||
(DisposeScript 987)
|
||||
)
|
||||
)
|
||||
(1027
|
||||
(if (> gSpeed 1) (gGame setSpeed: (-- gSpeed)))
|
||||
)
|
||||
(1028 (gGame setSpeed: 6))
|
||||
(1029
|
||||
(gGame setSpeed: (++ gSpeed))
|
||||
)
|
||||
(1281
|
||||
(if (not (proc0_12 1850))
|
||||
(Print 997 9)
|
||||
else
|
||||
(= temp6 (DoSound sndPAUSE 1))
|
||||
(= temp1
|
||||
((Gauge new:)
|
||||
description:
|
||||
{Use the mouse or left and right arrow keys to change the volume.}
|
||||
text: {Sound Volume}
|
||||
minimum: 0
|
||||
normal: 12
|
||||
maximum: 15
|
||||
higher: {Louder}
|
||||
lower: {Softer}
|
||||
doit: (DoSound sndVOLUME)
|
||||
)
|
||||
)
|
||||
(DoSound sndPAUSE temp6)
|
||||
(DoSound sndVOLUME temp1)
|
||||
(DisposeScript 987)
|
||||
)
|
||||
)
|
||||
(1283
|
||||
(if (= temp1 (DoSound sndSET_SOUND))
|
||||
(SetMenu 1283 110 {Turn On})
|
||||
else
|
||||
(SetMenu 1283 110 {Turn Off})
|
||||
)
|
||||
(DoSound sndSET_SOUND (not temp1))
|
||||
)
|
||||
(else
|
||||
(if global202 (global202 doit: temp0))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MenuBar.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MenuBar.sco
Normal file
Binary file not shown.
12
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Modifications.txt
Normal file
12
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Modifications.txt
Normal file
@@ -0,0 +1,12 @@
|
||||
Copy Protection:
|
||||
Main.sc line 720 changed (self newRoom: 701) to (self newRoom: 700) to skip the CP script
|
||||
|
||||
Main.sc line 777 Set cursor to normal from wait cursor after bypassing CP script
|
||||
|
||||
|
||||
|
||||
Warning: (rm92.sc) Duplicate case values. Already encountered a case for '6' Line: 368, col: 4
|
||||
|
||||
rm92.sc line 368 changed duplicate (6 to (7
|
||||
|
||||
rm92.sc line 378 changed (7 to (8 to make room for renaming duplicate (6 to (7
|
||||
27
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MountReg.sc
Normal file
27
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MountReg.sc
Normal file
@@ -0,0 +1,27 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 511)
|
||||
(include sci.sh)
|
||||
(use Class_255_0)
|
||||
(use Game)
|
||||
|
||||
(public
|
||||
mountReg 0
|
||||
)
|
||||
|
||||
(instance mountReg of Rgn
|
||||
(properties)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(cond
|
||||
((Said 'look/cliff') (Print 511 0))
|
||||
((Said 'climb,cross/cliff') (Print 511 1))
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MountReg.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/MountReg.sco
Normal file
Binary file not shown.
232
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Notes.sc
Normal file
232
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Notes.sc
Normal file
@@ -0,0 +1,232 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 516)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Avoid)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use InvI)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
regMinstrel 0
|
||||
notes 1
|
||||
)
|
||||
(synonyms
|
||||
(man man man man boy person bard)
|
||||
(kiss kiss embrace)
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
local1
|
||||
)
|
||||
(instance thisSong of Sound
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance notes of Prop
|
||||
(properties)
|
||||
|
||||
(method (cue)
|
||||
(notes dispose:)
|
||||
)
|
||||
)
|
||||
|
||||
(instance regMinstrel of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(super init:)
|
||||
(if
|
||||
(or
|
||||
(and (== gCurRoomNum 13) (== global118 1))
|
||||
(and (== gCurRoomNum 14) (== global118 2))
|
||||
(and (== gCurRoomNum 19) (== global118 3))
|
||||
)
|
||||
(gNewAct_2 setScript: minstrelActions)
|
||||
(notes
|
||||
view: 888
|
||||
ignoreActors:
|
||||
cycleSpeed: 1
|
||||
setCycle: Fwd
|
||||
posn: (+ (gNewAct_2 x?) 16) (- (gNewAct_2 y?) 20)
|
||||
init:
|
||||
)
|
||||
(thisSong number: 19 play: minstrelActions)
|
||||
(minstrelActions changeState: 1)
|
||||
)
|
||||
(= global189 1)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(= global189 0)
|
||||
(thisSong dispose:)
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp gInvSaidMe)
|
||||
(super handleEvent: pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if
|
||||
(and
|
||||
(== (pEvent type?) evSAID)
|
||||
(gCast contains: gNewAct_2)
|
||||
)
|
||||
(cond
|
||||
((Said 'get/man') (Print 516 0))
|
||||
((Said 'kiss') (Print 516 1))
|
||||
((Said 'deliver>')
|
||||
(cond
|
||||
((Said '/book')
|
||||
(if (gEgo has: 18)
|
||||
(if (>= (gEgo distanceTo: gNewAct_2) 25)
|
||||
(Print 516 2)
|
||||
else
|
||||
(gSounds eachElementDo: #stop 0)
|
||||
(minstrelActions changeState: 10)
|
||||
)
|
||||
else
|
||||
(proc0_17)
|
||||
)
|
||||
)
|
||||
(
|
||||
(and
|
||||
(= gInvSaidMe (gInv saidMe:))
|
||||
(gEgo has: (gInv indexOf: gInvSaidMe))
|
||||
)
|
||||
(Print 516 3)
|
||||
)
|
||||
(else (pEvent claimed: 0))
|
||||
)
|
||||
)
|
||||
((Said 'rob/lute') (Print 516 4))
|
||||
((Said 'look/man')
|
||||
(if ((Inv at: 18) ownedBy: 203)
|
||||
(if (gCast contains: gNewAct_2)
|
||||
(Print 516 5)
|
||||
else
|
||||
(Print 516 6)
|
||||
)
|
||||
else
|
||||
(Print 516 7)
|
||||
)
|
||||
)
|
||||
((Said 'converse[/man]')
|
||||
(cond
|
||||
(((Inv at: 9) ownedBy: 203)
|
||||
(++ global184)
|
||||
(gSounds eachElementDo: #stop 0)
|
||||
(if (> global184 4)
|
||||
(= local1 (Random 2 4))
|
||||
else
|
||||
(= local1 global184)
|
||||
)
|
||||
(switch local1
|
||||
(1
|
||||
(Print 516 8)
|
||||
(Print 516 9)
|
||||
(thisSong number: 17 play: minstrelActions)
|
||||
)
|
||||
(2
|
||||
(Print 516 10)
|
||||
(thisSong number: 16 play: minstrelActions)
|
||||
)
|
||||
(3
|
||||
(Print 516 11)
|
||||
(thisSong number: 15 play: minstrelActions)
|
||||
)
|
||||
(4
|
||||
(Print 516 12)
|
||||
(thisSong number: 18 play: minstrelActions)
|
||||
)
|
||||
)
|
||||
(minstrelActions changeState: 1)
|
||||
)
|
||||
((gCast contains: gNewAct_2) (Print 516 13))
|
||||
(else (pEvent claimed: 0))
|
||||
)
|
||||
)
|
||||
((Said 'get/lute')
|
||||
(if ((Inv at: 9) ownedBy: 203)
|
||||
(Print 516 14)
|
||||
else
|
||||
(Print 516 15)
|
||||
)
|
||||
)
|
||||
((Said 'hum/') (Print 516 16))
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance minstrelActions of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(1
|
||||
(notes show: setPri: (gNewAct_2 priority?))
|
||||
(gNewAct_2 cycleSpeed: 1 setCycle: Fwd)
|
||||
)
|
||||
(2
|
||||
(gNewAct_2 setCycle: 0 cel: 0)
|
||||
(notes hide:)
|
||||
)
|
||||
(10
|
||||
(notes hide:)
|
||||
(proc0_8)
|
||||
(Print 516 17)
|
||||
(gNewAct_2
|
||||
view: 173
|
||||
cel: 0
|
||||
loop: 0
|
||||
cycleSpeed: 2
|
||||
setCycle: Fwd
|
||||
)
|
||||
(= global118 -1)
|
||||
(= seconds 4)
|
||||
)
|
||||
(11
|
||||
(Print 516 18)
|
||||
(= global182 1)
|
||||
((Inv at: 18) moveTo: 203)
|
||||
((Inv at: 9) moveTo: gEgo)
|
||||
(gGame changeScore: 3)
|
||||
(proc0_9)
|
||||
(gNewAct_2
|
||||
view: 171
|
||||
cel: 0
|
||||
loop: 2
|
||||
xStep: 2
|
||||
cycleSpeed: 0
|
||||
yStep: 1
|
||||
setAvoider: Avoid
|
||||
setCycle: Walk
|
||||
)
|
||||
(switch gCurRoomNum
|
||||
(13
|
||||
(gNewAct_2 setMotion: MoveTo 329 125 self)
|
||||
)
|
||||
(14
|
||||
(gNewAct_2 setMotion: MoveTo 329 136 self)
|
||||
)
|
||||
(19
|
||||
(gNewAct_2 setMotion: MoveTo 329 125 self)
|
||||
)
|
||||
)
|
||||
)
|
||||
(12
|
||||
(gNewAct_2 setScript: 0)
|
||||
(gNewAct_2 dispose:)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Notes.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Notes.sco
Normal file
Binary file not shown.
526
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Obj.sc
Normal file
526
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Obj.sc
Normal file
@@ -0,0 +1,526 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 999)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
|
||||
(public
|
||||
proc999_0 0
|
||||
proc999_1 1
|
||||
)
|
||||
|
||||
(procedure (proc999_0 param1)
|
||||
(return (if (< param1 0) -1 else (> param1 0)))
|
||||
)
|
||||
|
||||
(procedure (proc999_1 param1 param2)
|
||||
(if
|
||||
(<
|
||||
(= param1 (- param1 (* param2 (/ param1 param2))))
|
||||
0
|
||||
)
|
||||
(= param1 (+ param1 param2))
|
||||
)
|
||||
(return param1)
|
||||
)
|
||||
|
||||
(class Obj
|
||||
(properties)
|
||||
|
||||
(method (new)
|
||||
(Clone self)
|
||||
)
|
||||
|
||||
(method (init)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(return self)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(DisposeClone self)
|
||||
)
|
||||
|
||||
(method (showStr param1)
|
||||
(StrCpy param1 name)
|
||||
)
|
||||
|
||||
(method (showSelf &tmp [temp0 200])
|
||||
(Print (self showStr: @temp0))
|
||||
)
|
||||
|
||||
(method (perform param1)
|
||||
(param1 doit: self &rest)
|
||||
)
|
||||
|
||||
(method (isKindOf param1 &tmp objSuperClass)
|
||||
(= objSuperClass (self superClass?))
|
||||
(cond
|
||||
((== species (param1 species?)))
|
||||
((IsObject objSuperClass) (objSuperClass isKindOf: param1))
|
||||
)
|
||||
)
|
||||
|
||||
(method (isMemberOf param1)
|
||||
(return
|
||||
(if
|
||||
(and
|
||||
(& (param1 -info-?) $8000)
|
||||
(not (& -info- $8000))
|
||||
)
|
||||
(== species (param1 species?))
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (respondsTo param1)
|
||||
(RespondsTo self param1)
|
||||
)
|
||||
|
||||
(method (yourself)
|
||||
(return self)
|
||||
)
|
||||
)
|
||||
|
||||
(class Code of Obj
|
||||
(properties)
|
||||
|
||||
(method (doit)
|
||||
)
|
||||
)
|
||||
|
||||
(class Collect of Obj
|
||||
(properties
|
||||
elements 0
|
||||
size 0
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(if elements
|
||||
(self eachElementDo: #dispose)
|
||||
(DisposeList elements)
|
||||
)
|
||||
(= size (= elements 0))
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (showStr param1)
|
||||
(Format param1 999 0 name size)
|
||||
)
|
||||
|
||||
(method (showSelf &tmp [temp0 40])
|
||||
(Print (self showStr: @temp0))
|
||||
(self eachElementDo: #showSelf)
|
||||
)
|
||||
|
||||
(method (add param1 &tmp temp0 temp1 temp2)
|
||||
(if (not elements) (= elements (NewList)))
|
||||
(= temp1 0)
|
||||
(while (< temp1 argc)
|
||||
(AddToEnd
|
||||
elements
|
||||
(NewNode [param1 temp1] [param1 temp1])
|
||||
)
|
||||
(++ size)
|
||||
(++ temp1)
|
||||
)
|
||||
(return self)
|
||||
)
|
||||
|
||||
(method (delete param1 &tmp temp0)
|
||||
(= temp0 0)
|
||||
(while (< temp0 argc)
|
||||
(if (DeleteKey elements [param1 temp0]) (-- size))
|
||||
(++ temp0)
|
||||
)
|
||||
(return self)
|
||||
)
|
||||
|
||||
(method (eachElementDo param1 &tmp temp0 temp1 temp2)
|
||||
(= temp0 (FirstNode elements))
|
||||
(while temp0
|
||||
(= temp1 (NextNode temp0))
|
||||
(if (not (IsObject (= temp2 (NodeValue temp0))))
|
||||
(return)
|
||||
)
|
||||
(temp2 param1: &rest)
|
||||
(= temp0 temp1)
|
||||
)
|
||||
)
|
||||
|
||||
(method (firstTrue param1 &tmp temp0 temp1 temp2)
|
||||
(= temp0 (FirstNode elements))
|
||||
(while temp0
|
||||
(= temp1 (NextNode temp0))
|
||||
(= temp2 (NodeValue temp0))
|
||||
(if (temp2 param1: &rest) (return temp2))
|
||||
(= temp0 temp1)
|
||||
)
|
||||
(return 0)
|
||||
)
|
||||
|
||||
(method (allTrue param1 &tmp temp0 temp1 temp2)
|
||||
(= temp0 (FirstNode elements))
|
||||
(while temp0
|
||||
(= temp1 (NextNode temp0))
|
||||
(= temp2 (NodeValue temp0))
|
||||
(if (not (temp2 param1: &rest)) (return 0))
|
||||
(= temp0 temp1)
|
||||
)
|
||||
(return 1)
|
||||
)
|
||||
|
||||
(method (contains param1)
|
||||
(FindKey elements param1)
|
||||
)
|
||||
|
||||
(method (isEmpty)
|
||||
(if (== elements 0) else (EmptyList elements))
|
||||
)
|
||||
|
||||
(method (first)
|
||||
(FirstNode elements)
|
||||
)
|
||||
|
||||
(method (next param1)
|
||||
(NextNode param1)
|
||||
)
|
||||
|
||||
(method (release &tmp temp0 temp1)
|
||||
(= temp0 (FirstNode elements))
|
||||
(while temp0
|
||||
(= temp1 (NextNode temp0))
|
||||
(self delete: (NodeValue temp0))
|
||||
(= temp0 temp1)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class List of Collect
|
||||
(properties
|
||||
elements 0
|
||||
size 0
|
||||
)
|
||||
|
||||
(method (showStr param1)
|
||||
(Format param1 999 1 name size)
|
||||
)
|
||||
|
||||
(method (at param1 &tmp temp0)
|
||||
(= temp0 (FirstNode elements))
|
||||
(while (and param1 temp0)
|
||||
(-- param1)
|
||||
(= temp0 (NextNode temp0))
|
||||
)
|
||||
(NodeValue temp0)
|
||||
)
|
||||
|
||||
(method (last)
|
||||
(LastNode elements)
|
||||
)
|
||||
|
||||
(method (prev param1)
|
||||
(PrevNode param1)
|
||||
)
|
||||
|
||||
(method (addToFront param1 &tmp temp0)
|
||||
(if (not elements) (= elements (NewList)))
|
||||
(= temp0 (- argc 1))
|
||||
(while (<= 0 temp0)
|
||||
(AddToFront
|
||||
elements
|
||||
(NewNode [param1 temp0] [param1 temp0])
|
||||
)
|
||||
(++ size)
|
||||
(-- temp0)
|
||||
)
|
||||
(return self)
|
||||
)
|
||||
|
||||
(method (addToEnd param1 &tmp temp0)
|
||||
(if (not elements) (= elements (NewList)))
|
||||
(= temp0 0)
|
||||
(while (< temp0 argc)
|
||||
(AddToEnd
|
||||
elements
|
||||
(NewNode [param1 temp0] [param1 temp0])
|
||||
)
|
||||
(++ size)
|
||||
(++ temp0)
|
||||
)
|
||||
(return self)
|
||||
)
|
||||
|
||||
(method (addAfter param1 param2 &tmp temp0 temp1 temp2)
|
||||
(if (= temp2 (FindKey elements param1))
|
||||
(-- argc)
|
||||
(= temp0 0)
|
||||
(while (< temp0 argc)
|
||||
(= temp2
|
||||
(AddAfter
|
||||
elements
|
||||
temp2
|
||||
(NewNode [param2 temp0] [param2 temp0])
|
||||
)
|
||||
)
|
||||
(++ size)
|
||||
(++ temp0)
|
||||
)
|
||||
)
|
||||
(return self)
|
||||
)
|
||||
|
||||
(method (indexOf param1 &tmp temp0 temp1)
|
||||
(= temp0 0)
|
||||
(= temp1 (FirstNode elements))
|
||||
(while temp1
|
||||
(if (== param1 (NodeValue temp1)) (return temp0))
|
||||
(++ temp0)
|
||||
(= temp1 (NextNode temp1))
|
||||
)
|
||||
(return -1)
|
||||
)
|
||||
)
|
||||
|
||||
(class Set of List
|
||||
(properties
|
||||
elements 0
|
||||
size 0
|
||||
)
|
||||
|
||||
(method (showStr param1)
|
||||
(Format param1 999 2 name size)
|
||||
)
|
||||
|
||||
(method (add param1 &tmp temp0 temp1 temp2)
|
||||
(if (not elements) (= elements (NewList)))
|
||||
(= temp1 0)
|
||||
(while (< temp1 argc)
|
||||
(= temp2 [param1 temp1])
|
||||
(if (not (self contains: temp2))
|
||||
(AddToEnd elements (NewNode temp2 temp2))
|
||||
(++ size)
|
||||
)
|
||||
(++ temp1)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class EventHandler of Set
|
||||
(properties
|
||||
elements 0
|
||||
size 0
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp temp0 temp1 temp2)
|
||||
(= temp0 (FirstNode elements))
|
||||
(while (and temp0 (not (pEvent claimed?)))
|
||||
(= temp1 (NextNode temp0))
|
||||
(breakif (not (IsObject (= temp2 (NodeValue temp0)))))
|
||||
(temp2 handleEvent: pEvent)
|
||||
(= temp0 temp1)
|
||||
)
|
||||
(pEvent claimed?)
|
||||
)
|
||||
)
|
||||
|
||||
(class Script of Obj
|
||||
(properties
|
||||
client 0
|
||||
state $ffff
|
||||
start 0
|
||||
timer 0
|
||||
cycles 0
|
||||
seconds 0
|
||||
lastSeconds 0
|
||||
register 0
|
||||
script 0
|
||||
caller 0
|
||||
)
|
||||
|
||||
(method (init theClient theCaller theRegister)
|
||||
(if (>= argc 1)
|
||||
(= client theClient)
|
||||
(if (>= argc 2)
|
||||
(= caller theCaller)
|
||||
(if (>= argc 3) (= register theRegister))
|
||||
)
|
||||
)
|
||||
(self changeState: start)
|
||||
)
|
||||
|
||||
(method (doit &tmp theLastSeconds)
|
||||
(if script (script doit:))
|
||||
(cond
|
||||
(cycles (if (not (-- cycles)) (self cue:)))
|
||||
(
|
||||
(and
|
||||
seconds
|
||||
(!= lastSeconds (= theLastSeconds (GetTime 1)))
|
||||
)
|
||||
(= lastSeconds theLastSeconds)
|
||||
(if (not (-- seconds)) (self cue:))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(if (IsObject script) (script dispose:))
|
||||
(if (IsObject timer) (timer dispose:))
|
||||
(if (IsObject client) (client script: 0))
|
||||
(if (IsObject caller) (caller cue: register))
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(= state newState)
|
||||
)
|
||||
|
||||
(method (cue)
|
||||
(self changeState: (+ state 1) &rest)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if script (script handleEvent: pEvent))
|
||||
(pEvent claimed?)
|
||||
)
|
||||
|
||||
(method (setScript theScript)
|
||||
(if (IsObject script) (script dispose:))
|
||||
(if (= script theScript)
|
||||
((= script theScript) init: self &rest)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class Event of Obj
|
||||
(properties
|
||||
type $0000
|
||||
message 0
|
||||
modifiers $0000
|
||||
y 0
|
||||
x 0
|
||||
claimed 0
|
||||
)
|
||||
|
||||
(method (new param1 &tmp newSuper)
|
||||
(= newSuper (super new:))
|
||||
(GetEvent (if argc param1 else 32767) newSuper)
|
||||
(return newSuper)
|
||||
)
|
||||
)
|
||||
|
||||
(class Timer of Obj
|
||||
(properties
|
||||
cycleCnt -1
|
||||
seconds -1
|
||||
lastTime -1
|
||||
client 0
|
||||
)
|
||||
|
||||
(procedure (localproc_0768 &tmp theClient)
|
||||
(= theClient client)
|
||||
(= client 0)
|
||||
(if (IsObject theClient)
|
||||
(if (theClient respondsTo: #timer) (theClient timer: 0))
|
||||
(if (theClient respondsTo: #cue) (theClient cue:))
|
||||
)
|
||||
)
|
||||
|
||||
|
||||
(method (new)
|
||||
(return (if (== self Timer) (super new:) else self))
|
||||
)
|
||||
|
||||
(method (init theClient)
|
||||
(= client theClient)
|
||||
(gTimers add: self)
|
||||
(if (theClient respondsTo: #timer)
|
||||
(if (IsObject (theClient timer?))
|
||||
((theClient timer?) dispose:)
|
||||
)
|
||||
(theClient timer: self)
|
||||
)
|
||||
)
|
||||
|
||||
(method (doit &tmp theLastTime)
|
||||
(cond
|
||||
((!= cycleCnt -1) (if (not (-- cycleCnt)) (localproc_0768)))
|
||||
((!= lastTime (= theLastTime (GetTime 1)))
|
||||
(= lastTime theLastTime)
|
||||
(if (not (-- seconds)) (localproc_0768))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(if
|
||||
(and (IsObject client) (client respondsTo: #timer))
|
||||
(client timer: 0)
|
||||
)
|
||||
(= client 0)
|
||||
)
|
||||
|
||||
(method (set param1 param2 param3 param4 &tmp temp0 temp1 theGNewSpeed [temp3 50])
|
||||
(if (== (= theGNewSpeed gSpeed) 0)
|
||||
(= theGNewSpeed 1)
|
||||
)
|
||||
(= temp1 (/ (* param2 60) theGNewSpeed))
|
||||
(if (> argc 2)
|
||||
(= temp1 (+ temp1 (/ (* param3 3600) theGNewSpeed)))
|
||||
)
|
||||
(if (> argc 3)
|
||||
(= temp1
|
||||
(+ temp1 (* (/ (* param4 3600) theGNewSpeed) 60))
|
||||
)
|
||||
)
|
||||
((= temp0 (if (& -info- $8000) (self new:) else self))
|
||||
init: param1
|
||||
cycleCnt: temp1
|
||||
)
|
||||
(return temp0)
|
||||
)
|
||||
|
||||
(method (setCycle theCycler sendParams &tmp temp0)
|
||||
((= temp0 (if (& -info- $8000) (self new:) else self))
|
||||
init: theCycler
|
||||
cycleCnt: sendParams
|
||||
)
|
||||
(return temp0)
|
||||
)
|
||||
|
||||
(method (setReal param1 param2 param3 param4 &tmp temp0 temp1)
|
||||
(= temp1 param2)
|
||||
(if (> argc 2) (= temp1 (+ temp1 (* param3 60))))
|
||||
(if (> argc 3) (= temp1 (+ temp1 (* param4 3600))))
|
||||
((= temp0 (if (& -info- $8000) (self new:) else self))
|
||||
init: param1
|
||||
seconds: temp1
|
||||
)
|
||||
(return temp0)
|
||||
)
|
||||
|
||||
(method (delete)
|
||||
(if (== client 0)
|
||||
(gTimers delete: self)
|
||||
(super dispose:)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class TO of Obj
|
||||
(properties
|
||||
timeLeft 0
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(if timeLeft (-- timeLeft))
|
||||
)
|
||||
|
||||
(method (set theTimeLeft)
|
||||
(= timeLeft theTimeLeft)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Obj.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Obj.sco
Normal file
Binary file not shown.
83
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Ocean Region.sc
Normal file
83
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Ocean Region.sc
Normal file
@@ -0,0 +1,83 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 519)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Game)
|
||||
(use InvI)
|
||||
|
||||
(public
|
||||
Ocean_Region 0
|
||||
)
|
||||
(synonyms
|
||||
(flora flora flora blossom flora flora)
|
||||
(ocean seawater ocean)
|
||||
)
|
||||
|
||||
(instance Ocean_Region of Rgn
|
||||
(properties
|
||||
name "Ocean Region"
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(cond
|
||||
(
|
||||
(or
|
||||
(Said 'look<in/ocean,water')
|
||||
(Said 'look<under/ocean,water')
|
||||
(Said 'look<in/water')
|
||||
(Said 'look<under/water')
|
||||
)
|
||||
(Print 519 0)
|
||||
)
|
||||
((Said 'look/fish')
|
||||
(cond
|
||||
((gEgo has: 24) ((Inv at: 24) showSelf:))
|
||||
((not global100) (Print 519 1))
|
||||
(else (Print 519 2))
|
||||
)
|
||||
)
|
||||
((Said 'converse/fish')
|
||||
(if (not global100)
|
||||
(Print 519 3)
|
||||
else
|
||||
(Print 519 4)
|
||||
)
|
||||
)
|
||||
((Said 'chew,kill,kiss/fish')
|
||||
(if (not global100)
|
||||
(Print 519 5)
|
||||
else
|
||||
(Print 519 4)
|
||||
)
|
||||
)
|
||||
(
|
||||
(or (Said 'get,capture/fish') (Said 'fish[/!*]')) (Print 519 6))
|
||||
((Said 'look/ocean,water') (Print 519 7))
|
||||
((Said 'look/sky')
|
||||
(if (not global100)
|
||||
(Print 519 8)
|
||||
else
|
||||
(Print 519 9)
|
||||
)
|
||||
)
|
||||
((Said 'bathe[/!*]') (Print 519 10))
|
||||
(
|
||||
(or
|
||||
(Said 'dive/ocean,water')
|
||||
(Said 'dive[/!*]')
|
||||
(Said 'bathe<under/ocean,water')
|
||||
)
|
||||
(Print 519 11)
|
||||
)
|
||||
((or (Said 'get/drink') (Said 'drink')) (Print 519 12))
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Ocean Region.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Ocean Region.sco
Normal file
Binary file not shown.
52
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Ogre's Region.sc
Normal file
52
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Ogre's Region.sc
Normal file
@@ -0,0 +1,52 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 517)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Game)
|
||||
|
||||
(public
|
||||
Ogre_s_Region 0
|
||||
)
|
||||
(synonyms
|
||||
(kiss kiss embrace)
|
||||
(giant giant giant giant man giant)
|
||||
)
|
||||
|
||||
(instance Ogre_s_Region of Rgn
|
||||
(properties
|
||||
name "Ogre's Region"
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp gInvSaidMe)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if
|
||||
(and
|
||||
(== (pEvent type?) evSAID)
|
||||
(gCast contains: gNewAct)
|
||||
)
|
||||
(cond
|
||||
((Said 'look/giant') (Print 517 0))
|
||||
((Said 'converse') (Print 517 1))
|
||||
((Said 'kill/giant') (Print 517 2))
|
||||
((Said 'get,capture/giant') (Print 517 3))
|
||||
((Said 'kiss') (Print 517 4))
|
||||
((Said 'deliver>')
|
||||
(if
|
||||
(and
|
||||
(= gInvSaidMe (gInv saidMe:))
|
||||
(gEgo has: (gInv indexOf: gInvSaidMe))
|
||||
)
|
||||
(Print 517 5)
|
||||
else
|
||||
(Print 517 6)
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Ogre's Region.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Ogre's Region.sco
Normal file
Binary file not shown.
75
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/PlayFlute.sc
Normal file
75
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/PlayFlute.sc
Normal file
@@ -0,0 +1,75 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 304)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
playFlute 0
|
||||
)
|
||||
|
||||
(local
|
||||
gEgoViewer
|
||||
newProp
|
||||
)
|
||||
(instance fluteMusic of Sound
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance playFlute of Script
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(= global204 1)
|
||||
(Load rsVIEW 55)
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(proc0_8)
|
||||
(= newProp (Prop new:))
|
||||
(newProp
|
||||
view: 888
|
||||
ignoreActors:
|
||||
setPri: (+ (gEgo priority?) 1)
|
||||
cycleSpeed: 1
|
||||
setCycle: Fwd
|
||||
posn: (+ (gEgo x?) 10) (- (gEgo y?) 27)
|
||||
init:
|
||||
)
|
||||
(= gEgoViewer (gEgo viewer?))
|
||||
(gEgo
|
||||
viewer: 0
|
||||
view: 55
|
||||
loop: (if (== (gEgo view?) 2) 0 else 1)
|
||||
setMotion: 0
|
||||
cycleSpeed: 2
|
||||
setCycle: Fwd
|
||||
)
|
||||
(gSounds eachElementDo: #stop 0)
|
||||
(fluteMusic number: 77 play: self)
|
||||
)
|
||||
(1
|
||||
(gEgo
|
||||
viewer: gEgoViewer
|
||||
view: (if (== (gEgo loop?) 0) 2 else 4)
|
||||
)
|
||||
(gEgo
|
||||
script: gGEgoScript
|
||||
cycleSpeed: 0
|
||||
loop: 2
|
||||
setCycle: Walk
|
||||
)
|
||||
(newProp dispose:)
|
||||
(proc0_9)
|
||||
(fluteMusic dispose:)
|
||||
(DisposeScript 304)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/PlayFlute.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/PlayFlute.sco
Normal file
Binary file not shown.
97
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/PlayIt.sc
Normal file
97
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/PlayIt.sc
Normal file
@@ -0,0 +1,97 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 303)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
playIt 0
|
||||
)
|
||||
|
||||
(local
|
||||
newProp
|
||||
gEgoViewer
|
||||
)
|
||||
(instance musicLute of Sound
|
||||
(properties
|
||||
number 54
|
||||
)
|
||||
)
|
||||
|
||||
(instance playIt of Script
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(Load rsVIEW 54)
|
||||
(= global204 1)
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(proc0_8)
|
||||
(= newProp (Prop new:))
|
||||
(if
|
||||
(and (!= (gEgo view?) 2) (!= (gEgo view?) 4))
|
||||
(proc0_9)
|
||||
(musicLute dispose:)
|
||||
(DisposeScript 303)
|
||||
(return)
|
||||
)
|
||||
(if (== (gEgo view?) 2)
|
||||
(newProp
|
||||
view: 888
|
||||
ignoreActors:
|
||||
setPri: (gEgo priority?)
|
||||
cycleSpeed: 1
|
||||
setCycle: Fwd
|
||||
posn: (+ (gEgo x?) 13) (- (gEgo y?) 27)
|
||||
init:
|
||||
)
|
||||
else
|
||||
(newProp
|
||||
view: 888
|
||||
ignoreActors:
|
||||
setPri: (gEgo priority?)
|
||||
cycleSpeed: 1
|
||||
setCycle: Fwd
|
||||
posn: (+ (gEgo x?) 15) (- (gEgo y?) 37)
|
||||
init:
|
||||
)
|
||||
)
|
||||
(gSounds eachElementDo: #stop 0)
|
||||
(musicLute play: self)
|
||||
(= gEgoViewer (gEgo viewer?))
|
||||
(gEgo
|
||||
viewer: 0
|
||||
view: 54
|
||||
setMotion: 0
|
||||
loop: (if (== (gEgo view?) 2) 0 else 1)
|
||||
cycleSpeed: 2
|
||||
setCycle: Fwd
|
||||
)
|
||||
)
|
||||
(1
|
||||
(gEgo
|
||||
viewer: gEgoViewer
|
||||
view: (if (== (gEgo loop?) 0) 2 else 4)
|
||||
)
|
||||
(newProp dispose:)
|
||||
(gEgo
|
||||
viewer: gEgoViewer
|
||||
script: gGEgoScript
|
||||
cycleSpeed: 0
|
||||
loop: 2
|
||||
setCycle: Walk
|
||||
)
|
||||
(proc0_9)
|
||||
(musicLute dispose:)
|
||||
(DisposeScript 303)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/PlayIt.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/PlayIt.sco
Normal file
Binary file not shown.
132
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/ReadBook.sc
Normal file
132
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/ReadBook.sc
Normal file
@@ -0,0 +1,132 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 306)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
readBook 0
|
||||
readBook 1
|
||||
readNote 2
|
||||
)
|
||||
|
||||
(instance readBook of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(1
|
||||
(Print 306 0 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(2
|
||||
(Print 306 1 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(3
|
||||
(Print 306 2 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(4
|
||||
(Print 306 3 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(5
|
||||
(Print 306 4 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(6
|
||||
(Print 306 5 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(7
|
||||
(Print 306 6 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(8
|
||||
(Print 306 7 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(9
|
||||
(Print 306 8 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(10
|
||||
(Print 306 9 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(11
|
||||
(Print 306 10 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(12
|
||||
(Print 306 11 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(13
|
||||
(Print 306 12 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(14
|
||||
(Print 306 13 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(15
|
||||
(Print 306 14 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(16
|
||||
(Print 306 15 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(17
|
||||
(Print 306 16 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(18
|
||||
(Print 306 17 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(19
|
||||
(Print 306 18 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(20
|
||||
(Print 306 19 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(21
|
||||
(Print 306 20 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(22
|
||||
(Print 306 21 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(23
|
||||
(Print 306 22 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(24
|
||||
(Print 306 23 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(25
|
||||
(Print 306 24 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(26
|
||||
(Print 306 25 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(27
|
||||
(Print 306 26 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(28
|
||||
(Print 306 27 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(29
|
||||
(Print 306 28 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
(30
|
||||
(Print 306 29 33 gSmallFont 30 1 67 -1 15 70 290)
|
||||
)
|
||||
)
|
||||
(DisposeScript 306)
|
||||
)
|
||||
)
|
||||
|
||||
(instance readNote of Script
|
||||
(properties)
|
||||
|
||||
(method (cue)
|
||||
(switch (Random 1 9)
|
||||
(1 (Print 306 30))
|
||||
(2 (Print 306 31))
|
||||
(3 (Print 306 32))
|
||||
(4 (Print 306 33))
|
||||
(5 (Print 306 34))
|
||||
(6 (Print 306 35))
|
||||
(7 (Print 306 36))
|
||||
(8 (Print 306 37))
|
||||
(9 (Print 306 38))
|
||||
(10 (Print 306 39))
|
||||
)
|
||||
(DisposeScript 306)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/ReadBook.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/ReadBook.sco
Normal file
Binary file not shown.
125
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/RiverReg.sc
Normal file
125
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/RiverReg.sc
Normal file
@@ -0,0 +1,125 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 512)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
riverReg 0
|
||||
)
|
||||
(synonyms
|
||||
(brook brook brook)
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
gEgoViewer
|
||||
)
|
||||
(instance riverReg of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(super init:)
|
||||
(self setScript: riverActions)
|
||||
(Load rsVIEW 21)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
((ScriptID 0 4) dispose: delete:)
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(super handleEvent: pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(cond
|
||||
((Said 'look<in/brook')
|
||||
(if
|
||||
(or
|
||||
(& (= local0 (proc0_2 gEgo 20)) $0008)
|
||||
(& local0 $0800)
|
||||
(& local0 $0002)
|
||||
(& local0 $0200)
|
||||
)
|
||||
(Print 512 0)
|
||||
else
|
||||
(proc0_13)
|
||||
)
|
||||
)
|
||||
((or (Said 'look/brook') (Said 'look/water')) (Print 512 1))
|
||||
(
|
||||
(or
|
||||
(Said 'bathe/brook')
|
||||
(Said 'bathe')
|
||||
(Said 'enter/bathe')
|
||||
)
|
||||
(Print 512 2)
|
||||
)
|
||||
(
|
||||
(or
|
||||
(Said 'fish[/!*]')
|
||||
(Said 'fish<enter')
|
||||
(Said 'look,capture/fish')
|
||||
(Said 'cast/pole')
|
||||
)
|
||||
(Print 512 3)
|
||||
)
|
||||
((Said 'wade/brook')
|
||||
(if (== global105 0)
|
||||
(Print 512 4)
|
||||
else
|
||||
(Print 512 5)
|
||||
)
|
||||
)
|
||||
((or (Said 'drink') (Said 'get/drink'))
|
||||
(cond
|
||||
((!= global105 0) (Print 512 6))
|
||||
(
|
||||
(or
|
||||
(& (= local0 (proc0_2 gEgo 10)) $0008)
|
||||
(& local0 $0800)
|
||||
(& local0 $0002)
|
||||
(& local0 $0200)
|
||||
)
|
||||
(= global120 (Print 512 7 67 -1 10 88))
|
||||
(riverActions changeState: 1)
|
||||
)
|
||||
(else (proc0_13))
|
||||
)
|
||||
)
|
||||
((Said 'get/water') (Print 512 8))
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance riverActions of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(1
|
||||
(proc0_8)
|
||||
(= gEgoViewer (gEgo viewer?))
|
||||
(gEgo viewer: 0 view: 21 cel: 0 setCycle: End self)
|
||||
)
|
||||
(2
|
||||
((ScriptID 0 4) setReal: self 6)
|
||||
)
|
||||
(3 (gEgo setCycle: Beg self))
|
||||
(4
|
||||
(gEgo view: 2 setCycle: Walk viewer: gEgoViewer)
|
||||
(proc0_21)
|
||||
(proc0_9)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/RiverReg.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/RiverReg.sco
Normal file
Binary file not shown.
63
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/ShootBow.sc
Normal file
63
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/ShootBow.sc
Normal file
@@ -0,0 +1,63 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 305)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Cycle)
|
||||
(use InvI)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
shootBow 0
|
||||
)
|
||||
|
||||
(local
|
||||
gEgoViewer
|
||||
)
|
||||
(instance shootBow of Script
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(= global204 1)
|
||||
(Load rsVIEW 31)
|
||||
(Load rsVIEW 68)
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(proc0_8)
|
||||
(= gGEgoView (gEgo view?))
|
||||
(= gGEgoBaseSetter (gEgo baseSetter?))
|
||||
(= gEgoViewer (gEgo viewer?))
|
||||
(gEgo
|
||||
viewer: 0
|
||||
baseSetter: (ScriptID 0 1)
|
||||
view: (if (== gGEgoView 2) 31 else 68)
|
||||
setMotion: 0
|
||||
cel: 0
|
||||
setCycle: End self
|
||||
)
|
||||
)
|
||||
(1
|
||||
(gEgo view: gGEgoView setCycle: Walk)
|
||||
(= global204 0)
|
||||
((Inv at: 14) loop: (+ ((Inv at: 14) loop?) 1))
|
||||
(= global120 (Print 305 0 67 -1 10 88))
|
||||
(Timer setReal: self 4)
|
||||
)
|
||||
(2
|
||||
(proc0_21)
|
||||
(Print 305 1)
|
||||
(gEgo
|
||||
viewer: gEgoViewer
|
||||
baseSetter: gGEgoBaseSetter
|
||||
script: gGEgoScript
|
||||
)
|
||||
(proc0_9)
|
||||
(DisposeScript 305)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/ShootBow.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/ShootBow.sco
Normal file
Binary file not shown.
82
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Sound.sc
Normal file
82
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Sound.sc
Normal file
@@ -0,0 +1,82 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 989)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Obj)
|
||||
|
||||
|
||||
(class Sound of Obj
|
||||
(properties
|
||||
state $0000
|
||||
number 0
|
||||
priority 0
|
||||
loop 1
|
||||
handle 0
|
||||
signal $0000
|
||||
prevSignal 0
|
||||
client 0
|
||||
owner 0
|
||||
)
|
||||
|
||||
(method (new param1)
|
||||
((super new:) owner: (if argc param1 else 0) yourself:)
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(= state (= signal 0))
|
||||
(gSounds add: self)
|
||||
(DoSound sndINIT self)
|
||||
)
|
||||
|
||||
(method (dispose param1)
|
||||
(if (and argc (not param1)) (= client 0))
|
||||
(gSounds delete: self)
|
||||
(if handle (DoSound sndDISPOSE handle) (= handle 0))
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (play param1 &tmp temp0)
|
||||
(self stop:)
|
||||
(if (not loop) (= loop 1))
|
||||
(self init:)
|
||||
(= client (if argc param1 else 0))
|
||||
(DoSound sndPLAY self)
|
||||
)
|
||||
|
||||
(method (playMaybe)
|
||||
(self play: &rest)
|
||||
(if (== state 2) (self dispose:))
|
||||
)
|
||||
|
||||
(method (stop param1)
|
||||
(if (and argc (not param1)) (= client 0))
|
||||
(if handle (DoSound sndSTOP handle))
|
||||
)
|
||||
|
||||
(method (check)
|
||||
(if signal
|
||||
(if (IsObject client) (client cue: self))
|
||||
(= prevSignal signal)
|
||||
(= signal 0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (pause param1)
|
||||
(DoSound sndPAUSE param1)
|
||||
)
|
||||
|
||||
(method (changeState)
|
||||
(DoSound sndUPDATE self)
|
||||
)
|
||||
|
||||
(method (clean param1)
|
||||
(if (or (not owner) (== owner param1))
|
||||
(self dispose:)
|
||||
)
|
||||
)
|
||||
|
||||
(method (fade param1)
|
||||
(if (and argc (not param1)) (= client 0))
|
||||
(DoSound sndFADE handle)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Sound.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Sound.sco
Normal file
Binary file not shown.
313
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/SwampReg.sc
Normal file
313
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/SwampReg.sc
Normal file
@@ -0,0 +1,313 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 513)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
swampReg 0
|
||||
)
|
||||
(synonyms
|
||||
(water water marsh)
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
local1
|
||||
newProp
|
||||
newAct
|
||||
local4
|
||||
gEgoViewer
|
||||
)
|
||||
(instance poofSound of Sound
|
||||
(properties
|
||||
number 59
|
||||
)
|
||||
)
|
||||
|
||||
(instance swampReg of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(Load rsVIEW 5)
|
||||
(Load rsVIEW 6)
|
||||
(Load rsVIEW 7)
|
||||
(Load rsVIEW 10)
|
||||
(Load rsVIEW 372)
|
||||
(Load rsVIEW 377)
|
||||
(Load rsVIEW 193)
|
||||
(Load rsVIEW 680)
|
||||
(Load rsVIEW 370)
|
||||
(= local0 0)
|
||||
(gEgo viewer: swamp)
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(cond
|
||||
((Said 'bathe,dive,wade[<enter][/ocean]') (Print 513 0))
|
||||
(
|
||||
(or
|
||||
(Said 'enter/fish')
|
||||
(Said 'fish[/!*]')
|
||||
(Said 'capture/fish')
|
||||
(Said 'cast/pole')
|
||||
)
|
||||
(Print 513 1)
|
||||
)
|
||||
((Said 'get/water') (Print 513 2))
|
||||
((or (Said 'drink') (Said 'get/drink'))
|
||||
(if (== (gEgo view?) 2)
|
||||
(if
|
||||
(or
|
||||
(& (= local4 (proc0_2 gEgo 12)) $0008)
|
||||
(& local4 $0800)
|
||||
(& local4 $0002)
|
||||
(& local4 $0200)
|
||||
)
|
||||
(= gGEgoScript (gEgo script?))
|
||||
(gEgo setScript: drinking)
|
||||
else
|
||||
(Print 800 1)
|
||||
)
|
||||
else
|
||||
(Print 513 3)
|
||||
)
|
||||
)
|
||||
((Said 'look<in/water') (Print 513 4))
|
||||
((Said 'look,climb/boulder<[gray]') (Print 513 5))
|
||||
((Said 'look>')
|
||||
(cond
|
||||
((Said '/water') (Print 513 6))
|
||||
((Said '/cliff') (Print 513 7))
|
||||
((Said '/dirt') (Print 513 8))
|
||||
((Said '/tuft') (Print 513 9))
|
||||
((Said '/grass') (Print 513 10))
|
||||
((Said '/bush') (Print 513 11))
|
||||
((Said '/flora') (Print 513 12))
|
||||
((Said '/blossom') (Print 513 13))
|
||||
((Said '/forest') (Print 513 14))
|
||||
)
|
||||
)
|
||||
((Said 'climb,cross/cliff') (Print 513 15))
|
||||
((Said 'get/blossom') (Print 513 13))
|
||||
(
|
||||
(or (Said 'dennis/crown') (Said 'place/crown'))
|
||||
(cond
|
||||
(
|
||||
(and (gEgo inRect: 115 149 274 181) (== gCurRoomNum 78)) (Print 513 16))
|
||||
((!= (gEgo view?) 2) (Print 513 17))
|
||||
((gEgo has: 10) (swamp changeState: 20))
|
||||
(else (Print 800 2))
|
||||
)
|
||||
)
|
||||
(
|
||||
(or (Said 'detach/crown') (Said 'get<off/crown'))
|
||||
(if (== global105 13)
|
||||
(swamp changeState: 30)
|
||||
else
|
||||
(Print 513 18)
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance swamp of Script
|
||||
(properties)
|
||||
|
||||
(method (doit)
|
||||
(super doit:)
|
||||
(= local0 (= local1 (gEgo onControl: 1)))
|
||||
(cond
|
||||
((and (== global105 12) (== global132 0))
|
||||
(switch local1
|
||||
(1
|
||||
(gEgo illegalBits: -32768 view: 2)
|
||||
)
|
||||
(2048
|
||||
(gEgo illegalBits: -31744 view: 5)
|
||||
)
|
||||
(512
|
||||
(gEgo illegalBits: -31744 view: 6)
|
||||
)
|
||||
(8
|
||||
(gEgo illegalBits: -31744 view: 7)
|
||||
)
|
||||
(2 (self changeState: 1))
|
||||
)
|
||||
)
|
||||
((== global105 13)
|
||||
(if (== (gEgo mover?) 0) (gEgo cel: 0))
|
||||
(switch local1
|
||||
(1
|
||||
(gEgo illegalBits: -16384 view: 372)
|
||||
)
|
||||
(2048
|
||||
(gEgo illegalBits: -32768 view: 377)
|
||||
)
|
||||
(512
|
||||
(gEgo illegalBits: -32768 view: 377)
|
||||
)
|
||||
(8
|
||||
(gEgo view: 377 illegalBits: -32768)
|
||||
)
|
||||
(2 (self changeState: 10))
|
||||
(1024
|
||||
(gEgo illegalBits: -32768 view: 372)
|
||||
)
|
||||
(else
|
||||
(gEgo illegalBits: -15360 view: 377)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(1
|
||||
(proc0_8)
|
||||
(= global105 0)
|
||||
(gEgo
|
||||
illegalBits: 1
|
||||
view: 73
|
||||
cel: 0
|
||||
loop: (& (gEgo loop?) $0001)
|
||||
cycleSpeed: 2
|
||||
setCycle: End self
|
||||
)
|
||||
)
|
||||
(2
|
||||
(gEgo hide:)
|
||||
(Print 513 19)
|
||||
(Print 513 20)
|
||||
(Timer setReal: self 5)
|
||||
)
|
||||
(3 (= global127 1))
|
||||
(10
|
||||
(proc0_8)
|
||||
(= global105 0)
|
||||
(= newAct (Act new:))
|
||||
(newAct
|
||||
view: 193
|
||||
posn: (gEgo x?) (- (gEgo y?) 5)
|
||||
loop: 0
|
||||
cel: 0
|
||||
ignoreActors:
|
||||
setCycle: End self
|
||||
init:
|
||||
)
|
||||
((Sound new:) number: 47 play:)
|
||||
)
|
||||
(11
|
||||
(gEgo hide:)
|
||||
(= global105 0)
|
||||
(newAct loop: 1 cel: 0 setCycle: End self)
|
||||
)
|
||||
(12
|
||||
(newAct loop: 2 cel: 0 setCycle: Fwd)
|
||||
(Timer setReal: self 4)
|
||||
)
|
||||
(13
|
||||
(Print 513 21 67 -1 10)
|
||||
(newAct cel: 0 loop: 3 setCycle: End self)
|
||||
)
|
||||
(14
|
||||
(newAct dispose:)
|
||||
(Timer setReal: self 5)
|
||||
)
|
||||
(15 (= global127 1))
|
||||
(20
|
||||
(proc0_8)
|
||||
(gSounds eachElementDo: #stop 0)
|
||||
(poofSound play:)
|
||||
(= newProp (Prop new:))
|
||||
(newProp
|
||||
posn: (gEgo x?) (gEgo y?)
|
||||
setPri: (+ (gEgo priority?) 1)
|
||||
view: 680
|
||||
cel: 0
|
||||
loop: 0
|
||||
ignoreActors:
|
||||
setCycle: CT 5 1 self
|
||||
init:
|
||||
)
|
||||
)
|
||||
(21
|
||||
(newProp setCycle: End self)
|
||||
(= global105 13)
|
||||
(gEgo observeControl: 16384)
|
||||
(gEgo view: 370)
|
||||
)
|
||||
(22
|
||||
(Timer setReal: self 3)
|
||||
(newProp dispose:)
|
||||
)
|
||||
(23
|
||||
(gEgo view: 372 setCycle: Walk)
|
||||
(proc0_9)
|
||||
)
|
||||
(30
|
||||
(proc0_8)
|
||||
(gSounds eachElementDo: #stop 0)
|
||||
(poofSound play:)
|
||||
(= newProp (Prop new:))
|
||||
(newProp
|
||||
posn: (gEgo x?) (gEgo y?)
|
||||
setPri: (+ (gEgo priority?) 1)
|
||||
view: 680
|
||||
cel: 0
|
||||
loop: 0
|
||||
ignoreActors:
|
||||
setCycle: CT 5 1 self
|
||||
init:
|
||||
)
|
||||
)
|
||||
(31
|
||||
(newProp setCycle: End self)
|
||||
(= global105 12)
|
||||
(gEgo view: 2 ignoreControl: 16384 setCycle: Walk)
|
||||
(proc0_9)
|
||||
)
|
||||
(32 (newProp dispose:))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance drinking of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(proc0_8)
|
||||
(= gEgoViewer (gEgo viewer?))
|
||||
(gEgo viewer: 0 view: 21 cel: 0 setCycle: End self)
|
||||
)
|
||||
(1
|
||||
(= global120 (Print 513 22 67 -1 10 88))
|
||||
(Timer setReal: self 4)
|
||||
)
|
||||
(2 (gEgo setCycle: Beg self))
|
||||
(3
|
||||
(proc0_21)
|
||||
(gEgo view: 2 setCycle: Walk)
|
||||
(gEgo viewer: gEgoViewer script: gGEgoScript)
|
||||
(proc0_9)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/SwampReg.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/SwampReg.sco
Normal file
Binary file not shown.
702
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/SysWindow.sc
Normal file
702
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/SysWindow.sc
Normal file
@@ -0,0 +1,702 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 990)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
proc990_0 0
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
local1
|
||||
local2
|
||||
local3
|
||||
local4
|
||||
[local5 4] = [{Restore} {__Save__} {Replace} {Replace}]
|
||||
[local9 4] = [{Select the game that you would like to restore.} {Type the description of this saved game.} {This directory/disk can hold no more saved games. You must replace one of your saved games or use Change Directory to save on a different directory/disk.} {This directory/disk can hold no more saved games. You must replace one of your saved games or use Change Directory to save on a different directory/disk.}]
|
||||
)
|
||||
(procedure (proc990_0 param1 &tmp temp0 [temp1 33] [temp34 40])
|
||||
(asm
|
||||
code_0732:
|
||||
pushi 13
|
||||
pushi 990
|
||||
pushi 1
|
||||
pushi 33
|
||||
pushi 0
|
||||
pushi 41
|
||||
pushi 2
|
||||
lea @temp1
|
||||
push
|
||||
lsp param1
|
||||
callk StrCpy, 4
|
||||
push
|
||||
pushi 29
|
||||
pushi 81
|
||||
lofsa {OK}
|
||||
push
|
||||
pushi 1
|
||||
pushi 81
|
||||
lofsa {Cancel}
|
||||
push
|
||||
pushi 0
|
||||
calle Print, 26
|
||||
sat temp0
|
||||
not
|
||||
bnt code_0765
|
||||
ldi 0
|
||||
ret
|
||||
code_0765:
|
||||
pushi 1
|
||||
lea @temp1
|
||||
push
|
||||
callk StrLen, 2
|
||||
not
|
||||
bnt code_0779
|
||||
pushi 1
|
||||
lea @temp1
|
||||
push
|
||||
callk GetCWD, 2
|
||||
code_0779:
|
||||
pushi 1
|
||||
lea @temp1
|
||||
push
|
||||
callk ValidPath, 2
|
||||
bnt code_0794
|
||||
pushi 2
|
||||
lsp param1
|
||||
lea @temp1
|
||||
push
|
||||
callk StrCpy, 4
|
||||
ldi 1
|
||||
ret
|
||||
jmp code_0732
|
||||
code_0794:
|
||||
pushi 3
|
||||
pushi 4
|
||||
lea @temp34
|
||||
push
|
||||
pushi 990
|
||||
pushi 2
|
||||
lea @temp1
|
||||
push
|
||||
callk Format, 8
|
||||
push
|
||||
pushi 33
|
||||
pushi 0
|
||||
calle Print, 6
|
||||
jmp code_0732
|
||||
ret
|
||||
)
|
||||
)
|
||||
|
||||
(procedure (localproc_0494)
|
||||
(return
|
||||
(cond
|
||||
((== self Restore) 0)
|
||||
((localproc_07b3) 1)
|
||||
(local2 2)
|
||||
(else 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(procedure (localproc_07b3)
|
||||
(if (< local2 20) (CheckFreeSpace global30))
|
||||
)
|
||||
|
||||
(procedure (localproc_07c2)
|
||||
(Print 990 3 33 0)
|
||||
)
|
||||
|
||||
(class SysWindow of Obj
|
||||
(properties
|
||||
top 0
|
||||
left 0
|
||||
bottom 0
|
||||
right 0
|
||||
color 0
|
||||
back 15
|
||||
priority -1
|
||||
window 0
|
||||
type $0000
|
||||
title 0
|
||||
brTop 0
|
||||
brLeft 0
|
||||
brBottom 190
|
||||
brRight 320
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(DisposeWindow window)
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (open)
|
||||
(= window
|
||||
(NewWindow
|
||||
top
|
||||
left
|
||||
bottom
|
||||
right
|
||||
title
|
||||
type
|
||||
priority
|
||||
color
|
||||
back
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class SRDialog of Dialog
|
||||
(properties
|
||||
elements 0
|
||||
size 0
|
||||
text 0
|
||||
window 0
|
||||
theItem 0
|
||||
nsTop 0
|
||||
nsLeft 0
|
||||
nsBottom 0
|
||||
nsRight 0
|
||||
time 0
|
||||
timer 0
|
||||
busy 0
|
||||
)
|
||||
|
||||
(method (init param1 param2 param3)
|
||||
(= window SysWindow)
|
||||
(= nsBottom 0)
|
||||
(if
|
||||
(==
|
||||
(= local2 (GetSaveFiles (gGame name?) param2 param3))
|
||||
-1
|
||||
)
|
||||
(return 0)
|
||||
)
|
||||
(if (== (= local4 (localproc_0494)) 1)
|
||||
(editI
|
||||
text: (StrCpy param1 param2)
|
||||
font: gSmallFont
|
||||
setSize:
|
||||
moveTo: 4 4
|
||||
)
|
||||
(self add: editI setSize:)
|
||||
)
|
||||
(selectorI
|
||||
text: param2
|
||||
font: gSmallFont
|
||||
setSize:
|
||||
moveTo: 4 (+ nsBottom 4)
|
||||
state: 2
|
||||
)
|
||||
(= local1 (+ (selectorI nsRight?) 4))
|
||||
(okI
|
||||
text: [local5 local4]
|
||||
setSize:
|
||||
moveTo: local1 (selectorI nsTop?)
|
||||
state: (if (== local4 3) 0 else 3)
|
||||
)
|
||||
(cancelI
|
||||
setSize:
|
||||
moveTo: local1 (+ (okI nsBottom?) 4)
|
||||
state: (& (cancelI state?) $fff7)
|
||||
)
|
||||
(changeDirI
|
||||
setSize:
|
||||
moveTo: local1 (+ (cancelI nsBottom?) 4)
|
||||
state: (& (changeDirI state?) $fff7)
|
||||
)
|
||||
(self add: selectorI okI cancelI changeDirI setSize:)
|
||||
(textI
|
||||
text: [local9 local4]
|
||||
setSize: (- (- nsRight nsLeft) 8)
|
||||
moveTo: 4 4
|
||||
)
|
||||
(= local1 (+ (textI nsBottom?) 4))
|
||||
(self eachElementDo: #move 0 local1)
|
||||
(self add: textI setSize: center: open: 4 15)
|
||||
(return 1)
|
||||
)
|
||||
|
||||
(method (doit param1 &tmp temp0 temp1 temp2 temp3 [temp4 361] [temp365 21] [temp386 40])
|
||||
(asm
|
||||
pushSelf
|
||||
lofsa Restore
|
||||
eq?
|
||||
bnt code_0265
|
||||
lap argc
|
||||
bnt code_0265
|
||||
lap param1
|
||||
bnt code_0265
|
||||
pushi 1
|
||||
pushi 4
|
||||
lea @temp386
|
||||
push
|
||||
pushi 990
|
||||
pushi 0
|
||||
pushi #name
|
||||
pushi 0
|
||||
lag gGame
|
||||
send 4
|
||||
push
|
||||
callk Format, 8
|
||||
push
|
||||
callk FOpen, 2
|
||||
sat temp1
|
||||
push
|
||||
ldi 65535
|
||||
eq?
|
||||
bnt code_025f
|
||||
ret
|
||||
code_025f:
|
||||
pushi 1
|
||||
lst temp1
|
||||
callk FClose, 2
|
||||
code_0265:
|
||||
pushi #init
|
||||
pushi 3
|
||||
lsp param1
|
||||
lea @temp4
|
||||
push
|
||||
lea @temp365
|
||||
push
|
||||
self 10
|
||||
not
|
||||
bnt code_027e
|
||||
ldi 65535
|
||||
ret
|
||||
code_027e:
|
||||
lsl local4
|
||||
dup
|
||||
ldi 0
|
||||
eq?
|
||||
bnt code_0298
|
||||
lal local2
|
||||
bnt code_02b5
|
||||
lofsa okI
|
||||
jmp code_02b5
|
||||
lofsa changeDirI
|
||||
jmp code_02b5
|
||||
code_0298:
|
||||
dup
|
||||
ldi 1
|
||||
eq?
|
||||
bnt code_02a5
|
||||
lofsa editI
|
||||
jmp code_02b5
|
||||
code_02a5:
|
||||
dup
|
||||
ldi 2
|
||||
eq?
|
||||
bnt code_02b2
|
||||
lofsa okI
|
||||
jmp code_02b5
|
||||
code_02b2:
|
||||
lofsa changeDirI
|
||||
code_02b5:
|
||||
toss
|
||||
sal local0
|
||||
pushi #doit
|
||||
pushi 1
|
||||
push
|
||||
super Dialog, 6
|
||||
sal local1
|
||||
pushi #indexOf
|
||||
pushi 1
|
||||
pushi #cursor
|
||||
pushi 0
|
||||
lofsa selectorI
|
||||
send 4
|
||||
push
|
||||
lofsa selectorI
|
||||
send 6
|
||||
sal local3
|
||||
push
|
||||
ldi 18
|
||||
mul
|
||||
sat temp3
|
||||
lsl local1
|
||||
lofsa changeDirI
|
||||
eq?
|
||||
bnt code_037c
|
||||
pushi 1
|
||||
lsg global30
|
||||
call proc990_0, 2
|
||||
bnt code_027e
|
||||
pushi 3
|
||||
pushi #name
|
||||
pushi 0
|
||||
lag gGame
|
||||
send 4
|
||||
push
|
||||
lea @temp4
|
||||
push
|
||||
lea @temp365
|
||||
push
|
||||
callk GetSaveFiles, 6
|
||||
sal local2
|
||||
push
|
||||
ldi 65535
|
||||
eq?
|
||||
bnt code_0314
|
||||
ldi 65535
|
||||
sat temp2
|
||||
jmp code_048c
|
||||
code_0314:
|
||||
lal local4
|
||||
sat temp0
|
||||
pushi 0
|
||||
call localproc_0494, 0
|
||||
sal local4
|
||||
push
|
||||
dup
|
||||
ldi 0
|
||||
eq?
|
||||
bnt code_032a
|
||||
jmp code_0370
|
||||
code_032a:
|
||||
dup
|
||||
lat temp0
|
||||
eq?
|
||||
bnt code_035b
|
||||
pushi #contains
|
||||
pushi 1
|
||||
lofsa editI
|
||||
push
|
||||
self 6
|
||||
bnt code_0370
|
||||
pushi #cursor
|
||||
pushi 1
|
||||
pushi 1
|
||||
pushi 2
|
||||
lsp param1
|
||||
lea @temp4
|
||||
push
|
||||
callk StrCpy, 4
|
||||
push
|
||||
callk StrLen, 2
|
||||
push
|
||||
pushi 83
|
||||
pushi 0
|
||||
lofsa editI
|
||||
send 10
|
||||
jmp code_0370
|
||||
code_035b:
|
||||
pushi #dispose
|
||||
pushi 0
|
||||
pushi 87
|
||||
pushi 3
|
||||
lsp param1
|
||||
lea @temp4
|
||||
push
|
||||
lea @temp365
|
||||
push
|
||||
self 14
|
||||
code_0370:
|
||||
toss
|
||||
pushi #draw
|
||||
pushi 0
|
||||
lofsa selectorI
|
||||
send 4
|
||||
jmp code_027e
|
||||
code_037c:
|
||||
lsl local4
|
||||
ldi 2
|
||||
eq?
|
||||
bnt code_03b2
|
||||
lsl local1
|
||||
lofsa okI
|
||||
eq?
|
||||
bnt code_03b2
|
||||
pushi #doit
|
||||
pushi 1
|
||||
pushi 2
|
||||
lsp param1
|
||||
lat temp3
|
||||
leai @temp4
|
||||
push
|
||||
callk StrCpy, 4
|
||||
push
|
||||
lofsa GetReplaceName
|
||||
send 6
|
||||
bnt code_027e
|
||||
lal local3
|
||||
lati temp365
|
||||
sat temp2
|
||||
jmp code_048c
|
||||
jmp code_027e
|
||||
code_03b2:
|
||||
lsl local4
|
||||
ldi 1
|
||||
eq?
|
||||
bnt code_0433
|
||||
lsl local1
|
||||
lofsa okI
|
||||
eq?
|
||||
bt code_03cc
|
||||
lsl local1
|
||||
lofsa editI
|
||||
eq?
|
||||
bnt code_0433
|
||||
code_03cc:
|
||||
pushi 1
|
||||
lsp param1
|
||||
callk StrLen, 2
|
||||
push
|
||||
ldi 0
|
||||
eq?
|
||||
bnt code_03e1
|
||||
pushi 0
|
||||
call localproc_07c2, 0
|
||||
jmp code_027e
|
||||
code_03e1:
|
||||
ldi 65535
|
||||
sat temp2
|
||||
ldi 0
|
||||
sal local1
|
||||
code_03e9:
|
||||
lsl local1
|
||||
lal local2
|
||||
lt?
|
||||
bnt code_040b
|
||||
pushi 2
|
||||
lsp param1
|
||||
lsl local1
|
||||
ldi 18
|
||||
mul
|
||||
leai @temp4
|
||||
push
|
||||
callk StrCmp, 4
|
||||
sat temp2
|
||||
not
|
||||
bnt code_0406
|
||||
code_0406:
|
||||
+al local1
|
||||
jmp code_03e9
|
||||
code_040b:
|
||||
lat temp2
|
||||
not
|
||||
bnt code_0419
|
||||
lal local1
|
||||
lati temp365
|
||||
jmp code_042b
|
||||
code_0419:
|
||||
lsl local2
|
||||
ldi 20
|
||||
eq?
|
||||
bnt code_0429
|
||||
lal local3
|
||||
lati temp365
|
||||
jmp code_042b
|
||||
code_0429:
|
||||
lal local2
|
||||
code_042b:
|
||||
sat temp2
|
||||
jmp code_048c
|
||||
jmp code_027e
|
||||
code_0433:
|
||||
lsl local1
|
||||
lofsa okI
|
||||
eq?
|
||||
bnt code_0449
|
||||
lal local3
|
||||
lati temp365
|
||||
sat temp2
|
||||
jmp code_048c
|
||||
jmp code_027e
|
||||
code_0449:
|
||||
lsl local1
|
||||
ldi 0
|
||||
eq?
|
||||
bt code_045a
|
||||
lsl local1
|
||||
lofsa cancelI
|
||||
eq?
|
||||
bnt code_0464
|
||||
code_045a:
|
||||
ldi 65535
|
||||
sat temp2
|
||||
jmp code_048c
|
||||
jmp code_027e
|
||||
code_0464:
|
||||
lsl local4
|
||||
ldi 1
|
||||
eq?
|
||||
bnt code_027e
|
||||
pushi #cursor
|
||||
pushi 1
|
||||
pushi 1
|
||||
pushi 2
|
||||
lsp param1
|
||||
lat temp3
|
||||
leai @temp4
|
||||
push
|
||||
callk StrCpy, 4
|
||||
push
|
||||
callk StrLen, 2
|
||||
push
|
||||
pushi 83
|
||||
pushi 0
|
||||
lofsa editI
|
||||
send 10
|
||||
jmp code_027e
|
||||
code_048c:
|
||||
pushi #dispose
|
||||
pushi 0
|
||||
self 4
|
||||
lat temp2
|
||||
ret
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(class Restore of SRDialog
|
||||
(properties
|
||||
elements 0
|
||||
size 0
|
||||
text {Restore a Game}
|
||||
window 0
|
||||
theItem 0
|
||||
nsTop 0
|
||||
nsLeft 0
|
||||
nsBottom 0
|
||||
nsRight 0
|
||||
time 0
|
||||
timer 0
|
||||
busy 0
|
||||
)
|
||||
)
|
||||
|
||||
(class Save of SRDialog
|
||||
(properties
|
||||
elements 0
|
||||
size 0
|
||||
text {Save a Game}
|
||||
window 0
|
||||
theItem 0
|
||||
nsTop 0
|
||||
nsLeft 0
|
||||
nsBottom 0
|
||||
nsRight 0
|
||||
time 0
|
||||
timer 0
|
||||
busy 0
|
||||
)
|
||||
)
|
||||
|
||||
(instance GetReplaceName of Dialog
|
||||
(properties)
|
||||
|
||||
(method (doit param1 &tmp temp0)
|
||||
(= window SysWindow)
|
||||
(text1 setSize: moveTo: 4 4)
|
||||
(self add: text1 setSize:)
|
||||
(oldName
|
||||
text: param1
|
||||
font: gSmallFont
|
||||
setSize:
|
||||
moveTo: 4 nsBottom
|
||||
)
|
||||
(self add: oldName setSize:)
|
||||
(text2 setSize: moveTo: 4 nsBottom)
|
||||
(self add: text2 setSize:)
|
||||
(newName
|
||||
text: param1
|
||||
font: gSmallFont
|
||||
setSize:
|
||||
moveTo: 4 nsBottom
|
||||
)
|
||||
(self add: newName setSize:)
|
||||
(button1 nsLeft: 0 nsTop: 0 setSize:)
|
||||
(button2 nsLeft: 0 nsTop: 0 setSize:)
|
||||
(button2
|
||||
moveTo: (- nsRight (+ (button2 nsRight?) 4)) nsBottom
|
||||
)
|
||||
(button1
|
||||
moveTo: (- (button2 nsLeft?) (+ (button1 nsRight?) 4)) nsBottom
|
||||
)
|
||||
(self add: button1 button2 setSize: center: open: 0 15)
|
||||
(= temp0 (super doit: newName))
|
||||
(self dispose:)
|
||||
(if (not (StrLen param1))
|
||||
(localproc_07c2)
|
||||
(= temp0 0)
|
||||
)
|
||||
(return (if (== temp0 newName) else (== temp0 button1)))
|
||||
)
|
||||
)
|
||||
|
||||
(instance selectorI of DSelector
|
||||
(properties
|
||||
x 36
|
||||
y 8
|
||||
)
|
||||
)
|
||||
|
||||
(instance editI of DEdit
|
||||
(properties
|
||||
max 35
|
||||
)
|
||||
)
|
||||
|
||||
(instance okI of DButton
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance cancelI of DButton
|
||||
(properties
|
||||
text { Cancel_}
|
||||
)
|
||||
)
|
||||
|
||||
(instance changeDirI of DButton
|
||||
(properties
|
||||
text {Change\0D\0ADirectory}
|
||||
)
|
||||
)
|
||||
|
||||
(instance textI of DText
|
||||
(properties
|
||||
font 0
|
||||
)
|
||||
)
|
||||
|
||||
(instance text1 of DText
|
||||
(properties
|
||||
text {Replace}
|
||||
font 0
|
||||
)
|
||||
)
|
||||
|
||||
(instance text2 of DText
|
||||
(properties
|
||||
text {with:}
|
||||
font 0
|
||||
)
|
||||
)
|
||||
|
||||
(instance oldName of DText
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance newName of DEdit
|
||||
(properties
|
||||
max 35
|
||||
)
|
||||
)
|
||||
|
||||
(instance button1 of DButton
|
||||
(properties
|
||||
text {Replace}
|
||||
)
|
||||
)
|
||||
|
||||
(instance button2 of DButton
|
||||
(properties
|
||||
text {Cancel}
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/SysWindow.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/SysWindow.sco
Normal file
Binary file not shown.
37
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/TimeOut.sc
Normal file
37
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/TimeOut.sc
Normal file
@@ -0,0 +1,37 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 302)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use User)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
timeOut 0
|
||||
)
|
||||
|
||||
(instance timeOut of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(= global204 1)
|
||||
(gEgo setMotion: 0)
|
||||
(gCast eachElementDo: #hide)
|
||||
(User canControl: 0 canInput: 0)
|
||||
(DrawPic 991 dpOPEN_CHECKBOARD)
|
||||
(Timer setReal: self 5)
|
||||
)
|
||||
(1
|
||||
(= global120 (Print 302 0 88))
|
||||
(Timer setReal: self 15)
|
||||
)
|
||||
(2
|
||||
(if gModelessDlg (gModelessDlg dispose:))
|
||||
(= global204 0)
|
||||
(= global127 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/TimeOut.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/TimeOut.sco
Normal file
Binary file not shown.
138
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/User.sc
Normal file
138
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/User.sc
Normal file
@@ -0,0 +1,138 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 996)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use MenuBar)
|
||||
(use Obj)
|
||||
|
||||
|
||||
(local
|
||||
[local0 23]
|
||||
local23
|
||||
)
|
||||
(class User of Obj
|
||||
(properties
|
||||
alterEgo 0
|
||||
canInput 0
|
||||
controls 0
|
||||
echo 32
|
||||
prevDir 0
|
||||
prompt {Enter input}
|
||||
inputLineAddr 0
|
||||
x -1
|
||||
y -1
|
||||
blocks 1
|
||||
mapKeyToDir 1
|
||||
)
|
||||
|
||||
(method (init param1 param2)
|
||||
(= inputLineAddr (if argc param1 else @local0))
|
||||
(= local23 (if (== argc 2) param2 else 45))
|
||||
)
|
||||
|
||||
(method (doit &tmp newEvent newEventType newEventMessage)
|
||||
(if ((= newEvent (Event new:)) type?)
|
||||
(= gLastEvent newEvent)
|
||||
(= newEventType (newEvent type?))
|
||||
(if mapKeyToDir (MapKeyToDir newEvent))
|
||||
(if TheMenuBar (TheMenuBar handleEvent: newEvent))
|
||||
(GlobalToLocal newEvent)
|
||||
(gGame handleEvent: newEvent)
|
||||
(if (not (newEvent claimed?))
|
||||
(switch (newEvent type?)
|
||||
(1
|
||||
(if
|
||||
(and
|
||||
controls
|
||||
(IsObject alterEgo)
|
||||
(gCast contains: alterEgo)
|
||||
)
|
||||
(alterEgo setMotion: MoveTo (newEvent x?) (newEvent y?))
|
||||
(= prevDir 0)
|
||||
(newEvent claimed: 1)
|
||||
)
|
||||
)
|
||||
(64
|
||||
(if
|
||||
(and
|
||||
controls
|
||||
(IsObject alterEgo)
|
||||
(gCast contains: alterEgo)
|
||||
)
|
||||
(= newEventMessage (newEvent message?))
|
||||
(if
|
||||
(and
|
||||
(== newEventType 4)
|
||||
(== newEventMessage prevDir)
|
||||
(IsObject (alterEgo mover?))
|
||||
)
|
||||
(= newEventMessage 0)
|
||||
)
|
||||
(= prevDir
|
||||
(if (== newEventType 4) newEventMessage else 0)
|
||||
)
|
||||
(alterEgo setDirection: newEventMessage)
|
||||
(newEvent claimed: 1)
|
||||
)
|
||||
)
|
||||
(else
|
||||
(gCast handleEvent: newEvent)
|
||||
)
|
||||
)
|
||||
)
|
||||
(if
|
||||
(and
|
||||
(not (newEvent claimed?))
|
||||
(== (newEvent type?) 4)
|
||||
(or
|
||||
(== (newEvent message?) echo)
|
||||
(and
|
||||
(<= 32 (newEvent message?))
|
||||
(<= (newEvent message?) 127)
|
||||
)
|
||||
)
|
||||
canInput
|
||||
(self getInput: newEvent)
|
||||
(Parse @local0 newEvent)
|
||||
)
|
||||
(newEvent type: 128)
|
||||
(self said: newEvent)
|
||||
)
|
||||
)
|
||||
(newEvent dispose:)
|
||||
(= gLastEvent 0)
|
||||
)
|
||||
|
||||
(method (canControl theControls)
|
||||
(if argc (= controls theControls) (= prevDir 0))
|
||||
(return controls)
|
||||
)
|
||||
|
||||
(method (getInput param1 &tmp temp0 temp1)
|
||||
(if (!= (param1 type?) 4) (= local0 0))
|
||||
(if (!= (param1 message?) echo)
|
||||
(Format @local0 996 0 (param1 message?))
|
||||
)
|
||||
(= temp0 (Sound pause: blocks))
|
||||
(= temp1 (EditPrint @local0 local23 prompt 67 x y))
|
||||
(Sound pause: temp0)
|
||||
(return temp1)
|
||||
)
|
||||
|
||||
(method (said param1)
|
||||
(if TheMenuBar (gSFeatures addToFront: TheMenuBar))
|
||||
(if global54
|
||||
(__proc984_0 alterEgo gSFeatures gCast gFeatures)
|
||||
else
|
||||
(gSFeatures add: gCast gFeatures)
|
||||
)
|
||||
(gSFeatures addToEnd: gGame handleEvent: param1 release:)
|
||||
(if
|
||||
(and (== (param1 type?) 128) (not (param1 claimed?)))
|
||||
(gGame pragmaFail: @local0)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/User.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/User.sco
Normal file
Binary file not shown.
64
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/WaterReg.sc
Normal file
64
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/WaterReg.sc
Normal file
@@ -0,0 +1,64 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 501)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
waterReg 0
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
local1
|
||||
)
|
||||
(instance waterReg of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(super init:)
|
||||
(Load rsVIEW 5)
|
||||
(Load rsVIEW 6)
|
||||
(Load rsVIEW 7)
|
||||
(Load rsVIEW 8)
|
||||
(gEgo viewer: water)
|
||||
)
|
||||
)
|
||||
|
||||
(instance water of Script
|
||||
(properties)
|
||||
|
||||
(method (doit)
|
||||
(if (!= (= local0 (gEgo onControl: 1)) local1)
|
||||
(= local1 local0)
|
||||
(if (!= global105 14)
|
||||
(gEgo setCycle: Walk)
|
||||
(switch local0
|
||||
(1
|
||||
(= global105 0)
|
||||
(gEgo view: 2 setStep: 3 2)
|
||||
)
|
||||
(2048
|
||||
(= global105 1)
|
||||
(gEgo view: 5)
|
||||
)
|
||||
(512
|
||||
(= global105 2)
|
||||
(gEgo view: 6)
|
||||
)
|
||||
(8
|
||||
(gEgo view: 7)
|
||||
(= global105 3)
|
||||
)
|
||||
(2
|
||||
(gEgo view: 8)
|
||||
(= global105 4)
|
||||
(gEgo setCycle: Fwd)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/WaterReg.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/WaterReg.sco
Normal file
Binary file not shown.
103
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/WearCrown.sc
Normal file
103
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/WearCrown.sc
Normal file
@@ -0,0 +1,103 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 301)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use User)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
wearCrown 0
|
||||
)
|
||||
|
||||
(local
|
||||
gEgoViewer
|
||||
)
|
||||
(instance poofSound of Sound
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance wearCrown of Script
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(= global204 1)
|
||||
(Load rsVIEW 370)
|
||||
(Load rsVIEW 687)
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(if (== global189 1)
|
||||
(Print 301 0)
|
||||
(gEgo script: gGEgoScript)
|
||||
(DisposeScript 301)
|
||||
(return)
|
||||
else
|
||||
(proc0_8)
|
||||
(self changeState: 1)
|
||||
)
|
||||
)
|
||||
(1
|
||||
(= gEgoViewer (gEgo viewer?))
|
||||
(gSounds eachElementDo: #stop 0)
|
||||
(poofSound number: 59 play:)
|
||||
(User canControl: 0 canInput: 0)
|
||||
(= gGEgoView (gEgo view?))
|
||||
(= gNewProp (Prop new:))
|
||||
(gNewProp
|
||||
x: (gEgo x?)
|
||||
y: (gEgo y?)
|
||||
view: 687
|
||||
loop: 0
|
||||
ignoreActors:
|
||||
setPri: (+ (gEgo priority?) 1)
|
||||
cel: 0
|
||||
setCycle: CT 3 1 self
|
||||
init:
|
||||
)
|
||||
)
|
||||
(2
|
||||
(gNewProp setCycle: End self)
|
||||
(gEgo viewer: 0 view: 370 cycleSpeed: 2 setCycle: Fwd)
|
||||
)
|
||||
(3
|
||||
(Timer setReal: self 5)
|
||||
(gNewProp hide:)
|
||||
(Print 301 1)
|
||||
)
|
||||
(4
|
||||
(Print 301 2)
|
||||
(poofSound number: 59 play:)
|
||||
(gNewProp
|
||||
x: (gEgo x?)
|
||||
y: (gEgo y?)
|
||||
show:
|
||||
cel: 10
|
||||
setCycle: CT 3 -1 self
|
||||
)
|
||||
)
|
||||
(5
|
||||
(gEgo view: gGEgoView cycleSpeed: 0 setCycle: Walk)
|
||||
(gNewProp setCycle: Beg self)
|
||||
)
|
||||
(6 (= cycles 2))
|
||||
(7
|
||||
(if (== (poofSound state?) 3)
|
||||
(self changeState: 6)
|
||||
else
|
||||
(poofSound dispose:)
|
||||
(gNewProp dispose:)
|
||||
(gEgo viewer: gEgoViewer script: gGEgoScript)
|
||||
(proc0_9)
|
||||
(DisposeScript 301)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/WearCrown.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/WearCrown.sco
Normal file
Binary file not shown.
118
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Woods Region.sc
Normal file
118
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Woods Region.sc
Normal file
@@ -0,0 +1,118 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 507)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
Woods_Region 0
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
)
|
||||
(instance Woods_Region of Rgn
|
||||
(properties
|
||||
name "Woods Region"
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(if (== (Random 1 5) 4)
|
||||
(= gNewAct_4 (Act new:))
|
||||
(gNewAct_4
|
||||
view: 356
|
||||
ignoreHorizon:
|
||||
illegalBits: 0
|
||||
ignoreActors:
|
||||
setPri: 14
|
||||
setScript: ravenActions
|
||||
)
|
||||
(if (== (Random 1 2) 1)
|
||||
(gNewAct_4
|
||||
posn: 5 30
|
||||
xStep: 5
|
||||
yStep: 4
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo 339 20 gNewAct_4
|
||||
init:
|
||||
)
|
||||
else
|
||||
(gNewAct_4
|
||||
posn: 314 20
|
||||
xStep: 5
|
||||
yStep: 4
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo -20 40 gNewAct_4
|
||||
init:
|
||||
)
|
||||
)
|
||||
)
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(cond
|
||||
((Said 'look>')
|
||||
(cond
|
||||
((Said '/boulder') (Print 507 0))
|
||||
((Said '/flora') (Print 507 1))
|
||||
((Said '/dirt,down') (Print 507 2))
|
||||
((Said '/bush') (Print 507 3))
|
||||
((Said '/grass') (Print 507 4))
|
||||
((Said '/blossom') (Print 507 5))
|
||||
((Said '/forest') (Print 507 6))
|
||||
((Said '/crow,bird,crow')
|
||||
(if (gCast contains: gNewAct_4)
|
||||
(Print 507 7)
|
||||
else
|
||||
(Print 507 8)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
((Said 'climb/boulder') (Print 507 9))
|
||||
((Said 'get/blossom') (Print 507 10))
|
||||
((Said 'climb/forest') (Print 507 11))
|
||||
((Said 'converse/crow,bird,crow')
|
||||
(if (gCast contains: gNewAct_4)
|
||||
(Print 507 12)
|
||||
else
|
||||
(Print 507 13)
|
||||
)
|
||||
)
|
||||
((Said 'get,capture/crow,bird,crow')
|
||||
(if (gCast contains: gNewAct_4)
|
||||
(Print 507 14)
|
||||
else
|
||||
(Print 507 15)
|
||||
)
|
||||
)
|
||||
((Said 'kiss/crow,bird,crow')
|
||||
(if (gCast contains: gNewAct_4)
|
||||
(Print 507 16)
|
||||
else
|
||||
(Print 507 15)
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance ravenActions of Script
|
||||
(properties)
|
||||
|
||||
(method (cue)
|
||||
(gNewAct_4 dispose:)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Woods Region.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/Woods Region.sco
Normal file
Binary file not shown.
9
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/game.sh
Normal file
9
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/game.sh
Normal file
@@ -0,0 +1,9 @@
|
||||
/*************************************************************************
|
||||
* SCI Game Header
|
||||
*************************************************************************
|
||||
* Put all the defines specific to your game in here
|
||||
*************************************************************************/
|
||||
|
||||
// e.g.
|
||||
// (define MAIN_SCRIPT 0)
|
||||
// (define MENU_ABOUT $101)
|
||||
283
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/gfReg.sc
Normal file
283
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/gfReg.sc
Normal file
@@ -0,0 +1,283 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 505)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use InvI)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
gfReg 0
|
||||
)
|
||||
(synonyms
|
||||
(ocean seawater ocean)
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
local1
|
||||
local2
|
||||
newView
|
||||
newAct
|
||||
)
|
||||
(instance gfReg of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(super init:)
|
||||
(switch gCurRoomNum
|
||||
(33
|
||||
(= local1 198)
|
||||
(= local0 155)
|
||||
)
|
||||
(34
|
||||
(= local1 172)
|
||||
(= local0 133)
|
||||
)
|
||||
(35
|
||||
(= local1 126)
|
||||
(= local0 144)
|
||||
)
|
||||
(39
|
||||
(= local1 224)
|
||||
(= local0 113)
|
||||
)
|
||||
(40
|
||||
(= local1 241)
|
||||
(= local0 117)
|
||||
)
|
||||
(41
|
||||
(= local1 102)
|
||||
(= local0 109)
|
||||
)
|
||||
)
|
||||
(if (< (Random 1 100) 75)
|
||||
(= local2 (+ (Random 1 3) 32))
|
||||
else
|
||||
(= local2 (+ (Random 1 3) 38))
|
||||
)
|
||||
(if ((Inv at: 8) ownedBy: 888)
|
||||
((Inv at: 8) moveTo: local2)
|
||||
)
|
||||
(if ((Inv at: 8) ownedBy: gCurRoomNum)
|
||||
((= newView (View new:))
|
||||
view: 514
|
||||
posn: local1 local0
|
||||
loop: 0
|
||||
cel: 0
|
||||
init:
|
||||
stopUpd:
|
||||
)
|
||||
)
|
||||
(if (and (<= (Random 1 100) 40) (> local1 0))
|
||||
(Load rsVIEW 337)
|
||||
(= newAct (Act new:))
|
||||
(newAct
|
||||
view: 336
|
||||
moveSpeed: 1
|
||||
cycleSpeed: 1
|
||||
setCycle: Walk
|
||||
setMotion: Wander 30000
|
||||
illegalBits: -2
|
||||
posn: local1 (- local0 4)
|
||||
init:
|
||||
setScript: peacockActions
|
||||
setStep: 1 1
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(if
|
||||
(and
|
||||
(gCast contains: newAct)
|
||||
(not (newAct inRect: -10 50 329 199))
|
||||
)
|
||||
(newAct dispose:)
|
||||
)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(gTimers eachElementDo: #dispose 84)
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(cond
|
||||
((Said 'look>')
|
||||
(cond
|
||||
((Said '/beach,beach')
|
||||
(if ((Inv at: 8) ownedBy: gCurRoomNum)
|
||||
(Print 505 0)
|
||||
else
|
||||
(Print 505 1)
|
||||
)
|
||||
)
|
||||
((Said '/feather')
|
||||
(cond
|
||||
((gCast contains: newView) (Print 505 2))
|
||||
((gEgo has: 8) ((Inv at: 8) showSelf:))
|
||||
(else (Print 505 3))
|
||||
)
|
||||
)
|
||||
((Said '/tamir') (Print 505 4))
|
||||
((Said '<in,under/ocean,water')
|
||||
(if (!= (gEgo view?) 2)
|
||||
(Print 505 5)
|
||||
else
|
||||
(Print 505 6)
|
||||
)
|
||||
)
|
||||
((Said '/ocean,water') (Print 505 7))
|
||||
((or (Said '/dirt') (Said '<down'))
|
||||
(cond
|
||||
(((Inv at: 8) ownedBy: gCurRoomNum) (Print 505 0))
|
||||
((and (>= gCurRoomNum 36) (<= gCurRoomNum 38)) (Print 505 8))
|
||||
(else (Print 505 9))
|
||||
)
|
||||
)
|
||||
((Said '/boulder') (Print 505 10))
|
||||
((Said '/forest') (Print 505 11))
|
||||
((Said '/grass') (Print 505 12))
|
||||
((Said '/bush') (Print 505 13))
|
||||
((Said '/flora') (Print 505 14))
|
||||
((Said '/blossom') (Print 505 15))
|
||||
((Said '/garden') (Print 505 16))
|
||||
((Said '/castle') (Print 505 17))
|
||||
((Said '/peacock')
|
||||
(if (gCast contains: newAct)
|
||||
(Print 505 18)
|
||||
else
|
||||
(Print 505 19)
|
||||
)
|
||||
)
|
||||
((Said '/bird')
|
||||
(if (gCast contains: newAct)
|
||||
(Print 505 18)
|
||||
else
|
||||
(pEvent claimed: 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
((Said 'climb/forest') (Print 505 20))
|
||||
((Said 'converse>')
|
||||
(cond
|
||||
((Said '/peacock')
|
||||
(if (gCast contains: newAct)
|
||||
(Print 505 21)
|
||||
else
|
||||
(Print 505 19)
|
||||
)
|
||||
)
|
||||
((Said '/bird')
|
||||
(if (gCast contains: newAct)
|
||||
(Print 505 21)
|
||||
else
|
||||
(pEvent claimed: 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
((Said 'get/feather')
|
||||
(cond
|
||||
(((Inv at: 8) ownedBy: gCurRoomNum)
|
||||
(if (< (gEgo distanceTo: newView) 15)
|
||||
(gEgo get: 8)
|
||||
(gGame changeScore: 2)
|
||||
(gEgo setScript: getFeather)
|
||||
else
|
||||
(Print 800 1)
|
||||
)
|
||||
)
|
||||
((gEgo has: 8) (pEvent claimed: 0))
|
||||
(else (Print 505 22))
|
||||
)
|
||||
)
|
||||
((Said 'get/blossom') (Print 505 23))
|
||||
((Said 'get,capture/peacock')
|
||||
(if (gCast contains: newAct)
|
||||
(Print 505 24)
|
||||
else
|
||||
(Print 505 3)
|
||||
)
|
||||
)
|
||||
((Said 'get,capture/bird,parrot') (Print 505 25))
|
||||
((Said 'kiss')
|
||||
(if (gCast contains: newAct)
|
||||
(Print 505 26)
|
||||
else
|
||||
(pEvent claimed: 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance getFeather of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(proc0_8)
|
||||
(gEgo view: 21)
|
||||
(proc0_3 gEgo newView)
|
||||
(gEgo setCycle: End self)
|
||||
)
|
||||
(1
|
||||
(gEgo setCycle: Beg self)
|
||||
(= global182 1)
|
||||
(newView dispose:)
|
||||
)
|
||||
(2
|
||||
(gEgo view: 2 setScript: 0 setCycle: Walk)
|
||||
(proc0_9)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance peacockActions of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
((ScriptID 0 4) setReal: self (Random 10 40))
|
||||
)
|
||||
(1
|
||||
(newAct
|
||||
view: 337
|
||||
setLoop: 0
|
||||
setMotion: 0
|
||||
cel: 0
|
||||
setCycle: End self
|
||||
)
|
||||
)
|
||||
(2
|
||||
((ScriptID 0 4) setReal: self 4)
|
||||
)
|
||||
(3 (newAct setCycle: Beg self))
|
||||
(4
|
||||
(newAct
|
||||
view: 336
|
||||
setLoop: -1
|
||||
setCycle: Walk
|
||||
setMotion: Wander 30000
|
||||
)
|
||||
(self changeState: 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/gfReg.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/gfReg.sco
Normal file
Binary file not shown.
239
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/openPbox.sc
Normal file
239
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/openPbox.sc
Normal file
@@ -0,0 +1,239 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 307)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
openPbox 0
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
)
|
||||
(instance openPbox of Script
|
||||
(properties)
|
||||
|
||||
(method (init param1)
|
||||
(Load rsVIEW 40)
|
||||
(Load rsVIEW 21)
|
||||
(Load rsVIEW 519)
|
||||
(Load rsVIEW 43)
|
||||
(Load rsVIEW 685)
|
||||
(Load rsVIEW 684)
|
||||
(super init: param1)
|
||||
(proc0_8)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(Print 307 0 67 -1 10 25 6)
|
||||
(gEgo viewer: 0)
|
||||
(if global101 (gEgo view: 40) else (gEgo view: 21))
|
||||
(gEgo cel: 0 loop: 0 setCycle: End self)
|
||||
)
|
||||
(1
|
||||
((Sound new:) number: 58 play:)
|
||||
(gEgo
|
||||
view: 43
|
||||
loop: (if global101 0 else 2)
|
||||
cel: 0
|
||||
setCycle: End
|
||||
)
|
||||
(aBox
|
||||
loop: (if global101 1 else 3)
|
||||
cel: 0
|
||||
x: (if global101 (+ (gEgo x?) 30) else (+ (gEgo x?) 24))
|
||||
y: (gEgo y?)
|
||||
init:
|
||||
setCycle: End self
|
||||
)
|
||||
(ills
|
||||
posn: (aBox x?) (- (aBox y?) 5)
|
||||
ignoreHorizon: 1
|
||||
ignoreActors: 1
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 6
|
||||
setCycle: End
|
||||
)
|
||||
(Print 307 1 33 gSmallFont 67 5 10 70 120 88)
|
||||
)
|
||||
(2
|
||||
(smokeFirst
|
||||
posn: (aBox x?) (- (aBox y?) 5)
|
||||
ignoreHorizon: 1
|
||||
ignoreActors: 1
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 0
|
||||
moveSpeed: 1
|
||||
setCycle: End self
|
||||
)
|
||||
)
|
||||
(3
|
||||
(ills hide:)
|
||||
((ills new:)
|
||||
posn: (aBox x?) (- (aBox y?) 5)
|
||||
ignoreHorizon: 1
|
||||
ignoreActors: 1
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 0
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo (* 10 (Random 0 32)) -10
|
||||
)
|
||||
((ills new:)
|
||||
posn: (aBox x?) (- (aBox y?) 5)
|
||||
ignoreHorizon: 1
|
||||
ignoreActors: 1
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 1
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo (Random 0 320) -10
|
||||
)
|
||||
((ills new:)
|
||||
posn: (aBox x?) (- (aBox y?) 5)
|
||||
ignoreHorizon: 1
|
||||
ignoreActors: 1
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 2
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo (Random 0 320) -10
|
||||
)
|
||||
((ills new:)
|
||||
posn: (aBox x?) (- (aBox y?) 5)
|
||||
ignoreHorizon: 1
|
||||
ignoreActors: 1
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 3
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo (Random 0 320) -10
|
||||
)
|
||||
((ills new:)
|
||||
posn: (aBox x?) (- (aBox y?) 5)
|
||||
ignoreHorizon: 1
|
||||
ignoreActors: 1
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 4
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo (Random 0 320) -10
|
||||
)
|
||||
((ills new:)
|
||||
posn: (aBox x?) (- (aBox y?) 5)
|
||||
ignoreHorizon: 1
|
||||
ignoreActors: 1
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 5
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo (Random 0 320) -10
|
||||
)
|
||||
(smokeFirst
|
||||
setLoop: 1
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo (aBox x?) (- (aBox y?) 20) self
|
||||
)
|
||||
)
|
||||
(4
|
||||
((smokes new:)
|
||||
posn: (smokeFirst x?) (smokeFirst y?)
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 2
|
||||
setMotion: MoveTo (* 10 (Random 10 20)) -10
|
||||
)
|
||||
((smokes new:)
|
||||
posn: (smokeFirst x?) (smokeFirst y?)
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 3
|
||||
moveSpeed: 1
|
||||
setMotion: MoveTo (* 10 (Random 10 20)) -10
|
||||
)
|
||||
((smokes new:)
|
||||
posn: (smokeFirst x?) (smokeFirst y?)
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 4
|
||||
setMotion: MoveTo (* 10 (Random 10 20)) -10
|
||||
)
|
||||
((smokes new:)
|
||||
posn: (smokeFirst x?) (smokeFirst y?)
|
||||
setPri: (aBox priority?)
|
||||
init:
|
||||
setLoop: 5
|
||||
setMotion: MoveTo (* 10 (Random 10 20)) -10
|
||||
)
|
||||
(smokeFirst hide:)
|
||||
((ScriptID 0 6) setReal: self 10)
|
||||
)
|
||||
(5
|
||||
(gEgo
|
||||
loop: (if global101 1 else 3)
|
||||
cycleSpeed: 2
|
||||
setCycle: End
|
||||
)
|
||||
(proc0_21)
|
||||
((ScriptID 0 6) setReal: self 10)
|
||||
)
|
||||
(6 (= global127 1))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance aBox of Prop
|
||||
(properties
|
||||
view 519
|
||||
)
|
||||
)
|
||||
|
||||
(instance smokeFirst of Act
|
||||
(properties
|
||||
view 685
|
||||
illegalBits $0000
|
||||
)
|
||||
|
||||
(method (init param1)
|
||||
(super init: param1)
|
||||
(self
|
||||
ignoreHorizon: 1
|
||||
ignoreActors: 1
|
||||
moveSpeed: 1
|
||||
setCycle: Fwd
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance smokes of Act
|
||||
(properties
|
||||
view 685
|
||||
illegalBits $0000
|
||||
)
|
||||
|
||||
(method (init param1)
|
||||
(super init: param1)
|
||||
(self
|
||||
ignoreHorizon: 1
|
||||
ignoreActors: 1
|
||||
moveSpeed: 1
|
||||
setCycle: Fwd
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance ills of Act
|
||||
(properties
|
||||
view 684
|
||||
illegalBits $0000
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/openPbox.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/openPbox.sco
Normal file
Binary file not shown.
413
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regBFCastle.sc
Normal file
413
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regBFCastle.sc
Normal file
@@ -0,0 +1,413 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 604)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Avoid)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use User)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
regBFCastle 0
|
||||
)
|
||||
|
||||
(local
|
||||
newAct_2
|
||||
newProp
|
||||
newAct
|
||||
local3
|
||||
)
|
||||
(instance henchCatchMusic of Sound
|
||||
(properties
|
||||
number 42
|
||||
)
|
||||
)
|
||||
|
||||
(instance henchChaseMusic of Sound
|
||||
(properties
|
||||
number 41
|
||||
)
|
||||
)
|
||||
|
||||
(instance regBFCastle of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(= keep 1)
|
||||
(Load rsVIEW 355)
|
||||
(Load rsVIEW 356)
|
||||
(Load rsVIEW 358)
|
||||
(= global189 1)
|
||||
(if (< global109 5) (= local3 92))
|
||||
(if (not global223) (= local3 0))
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(if
|
||||
(and
|
||||
(!= global105 16)
|
||||
global169
|
||||
(== (gEgo script?) 0)
|
||||
(gCast contains: newAct)
|
||||
(== (newAct script?) 0)
|
||||
(or
|
||||
(and
|
||||
(or (== gCurRoomNum 92) (== gCurRoomNum 91))
|
||||
(< (gEgo y?) 140)
|
||||
(< (gEgo distanceTo: newAct) 45)
|
||||
(> (Random 1 1000) 996)
|
||||
)
|
||||
(< (gEgo distanceTo: newAct) 20)
|
||||
)
|
||||
)
|
||||
(newAct setScript: henchChaseReg)
|
||||
)
|
||||
(super doit:)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(if (gCast contains: newAct)
|
||||
(newAct setMotion: 0 setCycle: 0)
|
||||
)
|
||||
(if (== keep 0) (= global189 0) (super dispose:))
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp temp0)
|
||||
(super handleEvent: pEvent)
|
||||
(return
|
||||
(cond
|
||||
((pEvent claimed?) (return 1))
|
||||
((== (pEvent type?) evSAID)
|
||||
(cond
|
||||
((Said 'blow/whistle') (if (gEgo has: 27) (Print 604 0) else (proc0_17)))
|
||||
((Said 'look/wall') (Print 604 1))
|
||||
(
|
||||
(and
|
||||
(gCast contains: newAct)
|
||||
(Said 'converse[/goon,man]')
|
||||
)
|
||||
(if (and global169 (not global175))
|
||||
(if (< (gEgo distanceTo: newAct) 40)
|
||||
(newAct setScript: henchChaseReg)
|
||||
else
|
||||
(Print 604 2)
|
||||
)
|
||||
else
|
||||
(Print 604 3 67 -1 10)
|
||||
)
|
||||
)
|
||||
((Said '/goon,man>')
|
||||
(cond
|
||||
((not (gCast contains: newAct)) (Print 604 4) (pEvent claimed: 1))
|
||||
((Said 'look')
|
||||
(if (and global169 (not global175))
|
||||
(Print 604 5)
|
||||
else
|
||||
(Print 604 6 67 -1 10)
|
||||
)
|
||||
)
|
||||
((Said 'awaken')
|
||||
(if (and global169 (not global175))
|
||||
(if (< (gEgo distanceTo: newAct) 40)
|
||||
(newAct setScript: henchChaseReg)
|
||||
else
|
||||
(Print 604 2)
|
||||
)
|
||||
else
|
||||
(Print 604 7)
|
||||
)
|
||||
)
|
||||
((Said 'get,capture') (Print 604 8))
|
||||
((Said 'kiss') (Print 604 9))
|
||||
((Said 'deliver') (Print 604 10) (pEvent claimed: 1))
|
||||
)
|
||||
)
|
||||
((Said '/bird,crow>')
|
||||
(cond
|
||||
((not (gCast contains: newAct_2)) (Print 604 11) (pEvent claimed: 1))
|
||||
((Said 'look') (Print 604 12))
|
||||
((Said 'converse') (Print 604 13))
|
||||
((Said 'get,capture') (Print 604 14))
|
||||
((Said 'kiss') (Print 604 15))
|
||||
((Said 'deliver') (Print 604 16) (pEvent claimed: 1))
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (newRoom newRoomNumber)
|
||||
(henchChaseReg seconds: 0)
|
||||
(super newRoom: newRoomNumber)
|
||||
)
|
||||
|
||||
(method (notify param1)
|
||||
(initializeRoom changeState: param1)
|
||||
)
|
||||
)
|
||||
|
||||
(instance initializeRoom of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(henchChaseReg state: 0)
|
||||
(if
|
||||
(and
|
||||
(or (== gCurRoomNum 91) (== gCurRoomNum 92))
|
||||
global223
|
||||
)
|
||||
((= newProp (Prop new:))
|
||||
view: 358
|
||||
loop: 0
|
||||
cel: 0
|
||||
posn:
|
||||
(switch gCurRoomNum
|
||||
(91 258)
|
||||
(92 275)
|
||||
)
|
||||
(switch gCurRoomNum
|
||||
(91 136)
|
||||
(92 156)
|
||||
)
|
||||
init:
|
||||
stopUpd:
|
||||
setScript: ravenStuff
|
||||
)
|
||||
)
|
||||
(if
|
||||
(and
|
||||
(> global109 3)
|
||||
global169
|
||||
(or
|
||||
(== gCurRoomNum 90)
|
||||
(== gCurRoomNum 91)
|
||||
(== gCurRoomNum 92)
|
||||
(== gCurRoomNum 93)
|
||||
)
|
||||
)
|
||||
((= newAct (Act new:))
|
||||
view: 145
|
||||
loop: 4
|
||||
cel: (if (== gCurRoomNum 90) 1 else 0)
|
||||
posn:
|
||||
(switch gCurRoomNum
|
||||
(90 188)
|
||||
(91 210)
|
||||
(92 200)
|
||||
(93 124)
|
||||
)
|
||||
(switch gCurRoomNum
|
||||
(90 128)
|
||||
(91 119)
|
||||
(92 128)
|
||||
(93 129)
|
||||
)
|
||||
init:
|
||||
setAvoider: Avoid
|
||||
stopUpd:
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance ravenStuff of Script
|
||||
(properties)
|
||||
|
||||
(method (doit)
|
||||
(if
|
||||
(and
|
||||
(== gCurRoomNum local3)
|
||||
(not (gCast contains: newAct_2))
|
||||
)
|
||||
(self changeState: 0)
|
||||
)
|
||||
(if
|
||||
(and
|
||||
(gCast contains: newAct_2)
|
||||
(!= (newAct_2 priority?) (newProp priority?))
|
||||
)
|
||||
(newAct_2 setPri: (CoordPri (newProp y?)))
|
||||
)
|
||||
(super doit:)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(if
|
||||
(and
|
||||
(not (gCast contains: newAct_2))
|
||||
(== gCurRoomNum local3)
|
||||
(or (== gCurRoomNum 91) (== gCurRoomNum 92))
|
||||
)
|
||||
((= newAct_2 (Act new:))
|
||||
view: 356
|
||||
ignoreActors: 1
|
||||
illegalBits: 0
|
||||
xStep: 6
|
||||
yStep: 2
|
||||
posn:
|
||||
(switch gCurRoomNum
|
||||
(91 316)
|
||||
(92 51)
|
||||
)
|
||||
(switch gCurRoomNum
|
||||
(91 90)
|
||||
(92 81)
|
||||
)
|
||||
init:
|
||||
)
|
||||
(newAct_2
|
||||
setPri: (+ (newProp priority?) 1)
|
||||
setCycle: Fwd
|
||||
setMotion: MoveTo (newProp x?) (- (newProp y?) 60) self
|
||||
)
|
||||
else
|
||||
(self changeState: 5)
|
||||
)
|
||||
)
|
||||
(1
|
||||
(newAct_2
|
||||
setPri: (newProp priority?)
|
||||
setMotion: MoveTo (newProp x?) (- (newProp y?) 40) self
|
||||
)
|
||||
)
|
||||
(2
|
||||
(newAct_2
|
||||
view: 355
|
||||
loop: 3
|
||||
setMotion: 0
|
||||
setScript: preenShit
|
||||
)
|
||||
(= seconds 30)
|
||||
)
|
||||
(3
|
||||
(newAct_2 setScript: 0 setCycle: 0)
|
||||
(newAct_2 cel: 0 loop: 2 setCycle: End self)
|
||||
)
|
||||
(4
|
||||
(newAct_2
|
||||
setScript: 0
|
||||
view: 356
|
||||
setPri: 11
|
||||
setLoop: -1
|
||||
setCycle: Fwd
|
||||
setMotion:
|
||||
MoveTo
|
||||
(switch gCurRoomNum
|
||||
(91 316)
|
||||
(92 53)
|
||||
)
|
||||
(switch gCurRoomNum
|
||||
(91 103)
|
||||
(92 81)
|
||||
)
|
||||
self
|
||||
)
|
||||
)
|
||||
(5
|
||||
(if (gCast contains: newAct_2) (newAct_2 dispose:))
|
||||
(cond
|
||||
((== local3 92) (= local3 91))
|
||||
(global223 (= local3 92))
|
||||
)
|
||||
(self cue:)
|
||||
)
|
||||
(6 (= state -1) (= seconds 30))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance preenShit of Script
|
||||
(properties)
|
||||
|
||||
(method (init param1)
|
||||
(super init: param1)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(switch (/ (Random 0 59) 10)
|
||||
(1
|
||||
(newAct_2 loop: 0 setCycle: End self)
|
||||
)
|
||||
(2
|
||||
(newAct_2 loop: 1 setCycle: End self)
|
||||
)
|
||||
(else (self cue:))
|
||||
)
|
||||
)
|
||||
(1
|
||||
(newAct_2 loop: 3)
|
||||
(= seconds 4)
|
||||
)
|
||||
(2 (= state -1) (self cue:))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance henchChaseReg of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(newAct loop: 2 setCycle: End self)
|
||||
)
|
||||
(1
|
||||
(newAct loop: 0 setCycle: End self)
|
||||
)
|
||||
(2
|
||||
(= global175 1)
|
||||
(if (not (gCast contains: newAct))
|
||||
(newAct
|
||||
setStep: 6 3
|
||||
posn:
|
||||
(switch gCurRoomNum
|
||||
(93 (- (gEgo x?) 30))
|
||||
(91 (+ (gEgo x?) 30))
|
||||
)
|
||||
(gEgo y?)
|
||||
init:
|
||||
)
|
||||
)
|
||||
(newAct
|
||||
view: 141
|
||||
ignoreActors: 1
|
||||
setStep: 6 3
|
||||
setCycle: Walk
|
||||
setMotion: Chase gEgo 15 self
|
||||
)
|
||||
(henchChaseMusic play:)
|
||||
)
|
||||
(3
|
||||
(User canControl: 0 canInput: 0)
|
||||
(gEgo moveSpeed: 0 setMotion: 0)
|
||||
(henchChaseMusic dispose:)
|
||||
(henchCatchMusic play:)
|
||||
(= seconds 4)
|
||||
)
|
||||
(4
|
||||
(henchCatchMusic dispose:)
|
||||
(if (== gCurRoomNum gNewRoomNumber_2)
|
||||
(= global205 1)
|
||||
(gRoom newRoom: 81)
|
||||
else
|
||||
(User canControl: 1 canInput: 1)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regBFCastle.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regBFCastle.sco
Normal file
Binary file not shown.
45
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regDwarfHouse.sc
Normal file
45
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regDwarfHouse.sc
Normal file
@@ -0,0 +1,45 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 601)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Sound)
|
||||
(use Game)
|
||||
|
||||
(public
|
||||
regDwarfHouse 0
|
||||
)
|
||||
(synonyms
|
||||
(dwarf ass man person)
|
||||
)
|
||||
|
||||
(instance theSound of Sound
|
||||
(properties
|
||||
number 62
|
||||
loop -1
|
||||
)
|
||||
)
|
||||
|
||||
(instance regDwarfHouse of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(if initialized (return))
|
||||
(super init:)
|
||||
(Load rsVIEW 290)
|
||||
(Load rsSOUND 62)
|
||||
(= global189 (= keep 1))
|
||||
(theSound owner: self init:)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(if (not keep) (= global189 0) (super dispose:))
|
||||
)
|
||||
|
||||
(method (notify param1)
|
||||
(if param1
|
||||
(theSound play:)
|
||||
else
|
||||
(theSound client: 0 stop:)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regDwarfHouse.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regDwarfHouse.sco
Normal file
Binary file not shown.
89
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regOgreHouse.sc
Normal file
89
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regOgreHouse.sc
Normal file
@@ -0,0 +1,89 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 602)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Game)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
regOgreHouse 0
|
||||
)
|
||||
(synonyms
|
||||
(giant troll man)
|
||||
(giantess ass giantess fishwife)
|
||||
)
|
||||
|
||||
(instance regOgreHouse of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(if initialized (return))
|
||||
(= keep 1)
|
||||
(super init:)
|
||||
(if (not global166) (self setScript: ogreHere))
|
||||
(= global189 1)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(super doit:)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(if (== keep 0) (= global189 0) (super dispose:))
|
||||
)
|
||||
|
||||
(method (newRoom newRoomNumber)
|
||||
(if
|
||||
(and
|
||||
(== newRoomNumber 49)
|
||||
(== gCurRoomNum 48)
|
||||
(== (ogreHere state?) 0)
|
||||
)
|
||||
(ogreHere seconds: 90)
|
||||
)
|
||||
(if (and (== newRoomNumber 51) (gEgo has: 33))
|
||||
(ogreHere changeState: 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance ogreHere of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0 (= seconds 50))
|
||||
(1
|
||||
(if (and (!= gCurRoomNum 51) (!= gCurRoomNum 48))
|
||||
(Print 602 0 25 5)
|
||||
)
|
||||
(if (== gCurRoomNum 48)
|
||||
(= seconds 60)
|
||||
else
|
||||
(= seconds 10)
|
||||
)
|
||||
)
|
||||
(2
|
||||
(= global165 1)
|
||||
(if (== gCurRoomNum 51)
|
||||
(Print 602 1)
|
||||
(= seconds 60)
|
||||
)
|
||||
)
|
||||
(3
|
||||
(if (not global166)
|
||||
(= global165 2)
|
||||
(if (== gCurRoomNum 51) (Print 602 2))
|
||||
)
|
||||
(= seconds 60)
|
||||
)
|
||||
(4
|
||||
(if (and (== gCurRoomNum 51) (not global166))
|
||||
(= global165 5)
|
||||
(Print 602 3)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regOgreHouse.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regOgreHouse.sco
Normal file
Binary file not shown.
278
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regPan.sc
Normal file
278
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regPan.sc
Normal file
@@ -0,0 +1,278 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 514)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Avoid)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use InvI)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
regPan 0
|
||||
)
|
||||
(synonyms
|
||||
(kiss kiss embrace)
|
||||
(pan pan pan man pan pan person animal pan)
|
||||
)
|
||||
|
||||
(local
|
||||
local0
|
||||
local1
|
||||
local2
|
||||
newProp_2
|
||||
newProp
|
||||
local5
|
||||
)
|
||||
(instance panCage of Cage
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance panTheme of Sound
|
||||
(properties)
|
||||
)
|
||||
|
||||
(instance luteMusic of Sound
|
||||
(properties
|
||||
number 54
|
||||
)
|
||||
)
|
||||
|
||||
(instance regPan of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(super init:)
|
||||
(if ((Inv at: 0) ownedBy: 201)
|
||||
(= local0 157)
|
||||
(= local5
|
||||
(+
|
||||
(* (- global160 global211) 60)
|
||||
(- global159 global212)
|
||||
)
|
||||
)
|
||||
(if (and (<= (Random 1 100) 40) (>= local5 2))
|
||||
(panCage
|
||||
left: 0
|
||||
right: 319
|
||||
bottom: 189
|
||||
top: (gRoom horizon?)
|
||||
init:
|
||||
)
|
||||
(Load rsVIEW 157)
|
||||
(if (gEgo has: 9) (Load rsVIEW 54) (Load rsVIEW 150))
|
||||
(= gNewAct_5 (Act new:))
|
||||
(gNewAct_5
|
||||
posn: (Random 10 300) (Random (+ (gRoom horizon?) 20) 169)
|
||||
xStep: 2
|
||||
yStep: 1
|
||||
setCycle: Fwd
|
||||
observeBlocks: panCage
|
||||
setScript: panActions
|
||||
setMotion: Wander 1500
|
||||
view: local0
|
||||
init:
|
||||
yourself:
|
||||
)
|
||||
(= newProp (Prop new:))
|
||||
(newProp
|
||||
view: 888
|
||||
cycleSpeed: 1
|
||||
ignoreActors:
|
||||
setCycle: Fwd
|
||||
init:
|
||||
)
|
||||
(panTheme number: 7 loop: -1 play:)
|
||||
else
|
||||
(= gNewAct_5 0)
|
||||
)
|
||||
else
|
||||
(= gNewAct_5 0)
|
||||
)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(super doit:)
|
||||
(if (gCast contains: gNewAct_5)
|
||||
(if
|
||||
(or
|
||||
(== (gNewAct_5 view?) 158)
|
||||
(== (gNewAct_5 view?) 157)
|
||||
)
|
||||
(newProp
|
||||
setPri: (gNewAct_5 priority?)
|
||||
x: (+ (gNewAct_5 x?) 8)
|
||||
y: (- (gNewAct_5 y?) 22)
|
||||
)
|
||||
)
|
||||
(if (not (gNewAct_5 inRect: 0 0 319 219))
|
||||
(gNewAct_5 dispose:)
|
||||
(if (IsObject newProp) (newProp dispose:))
|
||||
(panTheme loop: 1 changeState:)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
((ScriptID 0 4) dispose: delete:)
|
||||
(super dispose:)
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp gInvSaidMe)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if
|
||||
(and
|
||||
(== (pEvent type?) evSAID)
|
||||
(gCast contains: gNewAct_5)
|
||||
)
|
||||
(cond
|
||||
((Said 'play/lute')
|
||||
(if (gEgo has: 9)
|
||||
(if (== (gNewAct_5 view?) 157)
|
||||
(gEgo setScript: playLute)
|
||||
(playLute changeState: 1)
|
||||
else
|
||||
(Print 514 0)
|
||||
)
|
||||
else
|
||||
(Print 800 2)
|
||||
)
|
||||
)
|
||||
((Said 'play/flute')
|
||||
(if (gEgo has: 0)
|
||||
(if (== (panTheme state?) 3)
|
||||
(Print 514 1)
|
||||
else
|
||||
(pEvent claimed: 0)
|
||||
)
|
||||
else
|
||||
(Print 800 2)
|
||||
)
|
||||
)
|
||||
((Said 'hum') (Print 514 2))
|
||||
((Said 'kill/pan') (Print 514 3))
|
||||
((Said 'play<with/pan') (Print 514 4))
|
||||
((Said 'dance') (Print 514 5))
|
||||
((Said 'get/pan') (Print 514 6))
|
||||
((Said 'capture/pan') (Print 514 7))
|
||||
((Said 'deliver/lute')
|
||||
(if (gEgo has: 9)
|
||||
(if local2
|
||||
(if (< (gEgo distanceTo: gNewAct_5) 22)
|
||||
((Inv at: 9) moveTo: 201)
|
||||
(Print 514 8)
|
||||
((Inv at: 0) moveTo: gEgo)
|
||||
(gGame changeScore: 3)
|
||||
(gEgo setMotion: 0)
|
||||
(gNewAct_5 view: 158 setMotion: Wander 3000)
|
||||
(= local0 158)
|
||||
(panTheme number: 8 loop: -1 play:)
|
||||
(newProp show:)
|
||||
else
|
||||
(Print 800 1)
|
||||
)
|
||||
else
|
||||
(Print 514 9)
|
||||
)
|
||||
else
|
||||
(Print 800 2)
|
||||
)
|
||||
)
|
||||
((Said 'deliver>')
|
||||
(if (= gInvSaidMe (gInv saidMe:))
|
||||
(if (gEgo has: (gInv indexOf: gInvSaidMe))
|
||||
(Print 514 10)
|
||||
else
|
||||
(proc0_17)
|
||||
)
|
||||
else
|
||||
(Print 514 11)
|
||||
(pEvent claimed: 1)
|
||||
)
|
||||
)
|
||||
((Said 'kiss') (Print 514 12))
|
||||
((== (gNewAct_5 view?) 157)
|
||||
(cond
|
||||
((Said 'look/pan') (Print 514 13))
|
||||
((Said 'converse[/pan]') (Print 514 14))
|
||||
((Said 'get/flute') (Print 514 15))
|
||||
((Said 'rob/flute') (Print 514 16))
|
||||
)
|
||||
)
|
||||
((== (gNewAct_5 view?) 158)
|
||||
(cond
|
||||
((Said 'get,rob/lute') (Print 514 17))
|
||||
((Said 'look/pan') (Print 514 18))
|
||||
((Said 'converse[/pan]') (Print 514 19))
|
||||
)
|
||||
)
|
||||
((== (gNewAct_5 view?) 150)
|
||||
(cond
|
||||
((Said 'converse[/pan]') (Print 514 20))
|
||||
((Said 'look/pan') (Print 514 21))
|
||||
((Said 'get/flute') (Print 514 15))
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance playLute of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(1
|
||||
(proc0_8)
|
||||
(panTheme client: 0 stop:)
|
||||
(luteMusic play: self)
|
||||
(gEgo view: 54 setLoop: 0 setCycle: Fwd)
|
||||
(= newProp_2 (Prop new:))
|
||||
(newProp_2
|
||||
view: 888
|
||||
setPri: (gEgo priority?)
|
||||
cycleSpeed: 1
|
||||
setCycle: Fwd
|
||||
posn: (+ (gEgo x?) 15) (- (gEgo y?) 25)
|
||||
init:
|
||||
)
|
||||
(gNewAct_5
|
||||
view: 150
|
||||
setAvoider: Avoid
|
||||
setCycle: Walk
|
||||
setMotion: Follow gEgo 55
|
||||
)
|
||||
(newProp hide:)
|
||||
)
|
||||
(2
|
||||
(Print 514 21 67 -1 10 83)
|
||||
(gEgo view: 2 setLoop: -1 setCycle: Walk)
|
||||
(if (IsObject newProp_2) (newProp_2 dispose:))
|
||||
(proc0_3 gEgo gNewAct_5)
|
||||
(= local2 1)
|
||||
(proc0_9)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance panActions of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0 (= seconds 25))
|
||||
(1
|
||||
(gNewAct_5 ignoreBlocks: panCage)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regPan.sco
Normal file
BIN
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regPan.sco
Normal file
Binary file not shown.
432
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regTroll.sc
Normal file
432
KQ4_v1.006.004_int0.000.502_SRC_(6)/src/regTroll.sc
Normal file
@@ -0,0 +1,432 @@
|
||||
;;; Sierra Script 1.0 - (do not remove this comment)
|
||||
(script# 605)
|
||||
(include sci.sh)
|
||||
(use Main)
|
||||
(use Class_255_0)
|
||||
(use Avoid)
|
||||
(use Sound)
|
||||
(use Cycle)
|
||||
(use Game)
|
||||
(use Feature)
|
||||
(use Obj)
|
||||
|
||||
(public
|
||||
regTroll 0
|
||||
)
|
||||
(synonyms
|
||||
(dirt dirt dirt dirt dirt)
|
||||
(kiss kiss embrace)
|
||||
(troll troll troll troll troll man)
|
||||
)
|
||||
|
||||
(local
|
||||
newAct
|
||||
local1
|
||||
local2
|
||||
local3
|
||||
)
|
||||
(instance trollCaveMusic of Sound
|
||||
(properties
|
||||
number 66
|
||||
priority -1
|
||||
)
|
||||
)
|
||||
|
||||
(instance caughtMusic of Sound
|
||||
(properties
|
||||
number 38
|
||||
priority 3
|
||||
)
|
||||
)
|
||||
|
||||
(instance trollMusic of Sound
|
||||
(properties
|
||||
number 37
|
||||
priority 2
|
||||
loop -1
|
||||
)
|
||||
|
||||
(method (play)
|
||||
(trollCaveMusic client: 0 stop:)
|
||||
(super play: &rest)
|
||||
)
|
||||
)
|
||||
|
||||
(instance regTroll of Rgn
|
||||
(properties)
|
||||
|
||||
(method (init)
|
||||
(if initialized (return))
|
||||
(= keep 1)
|
||||
(if (gEgo has: 3) (Load rsVIEW 967))
|
||||
(Load rsVIEW 904)
|
||||
(Load rsVIEW 190)
|
||||
(super init:)
|
||||
(= global189 1)
|
||||
(= local2 0)
|
||||
(= global126 0)
|
||||
(= local1 0)
|
||||
(= local3 0)
|
||||
(trollCaveMusic owner: self init:)
|
||||
(trollMusic owner: self init:)
|
||||
(caughtMusic owner: self init:)
|
||||
(doMusic cue:)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(super doit:)
|
||||
(if (== script gotchaScript) (return))
|
||||
(if
|
||||
(and
|
||||
(not (proc0_20))
|
||||
(not (& (gEgo onControl: 0) $0002))
|
||||
)
|
||||
(gEgo dispose:)
|
||||
(proc0_18)
|
||||
(Print 605 1)
|
||||
(self setScript: gotchaScript)
|
||||
(return)
|
||||
)
|
||||
(if
|
||||
(and (not (gCast contains: newAct)) (== global126 1))
|
||||
(trollScript changeState: 1)
|
||||
)
|
||||
(if (not local1)
|
||||
(= local1 1)
|
||||
(if
|
||||
(and
|
||||
(not global126)
|
||||
(< (Random 0 100) 50)
|
||||
(!= gCurRoomNum 76)
|
||||
(!= gCurRoomNum 73)
|
||||
)
|
||||
(trollScript start: 0)
|
||||
(self setScript: trollScript)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (dispose)
|
||||
(if (== keep 0) (= global189 0) (super dispose:))
|
||||
)
|
||||
|
||||
(method (handleEvent pEvent &tmp gInvSaidMe temp1 temp2)
|
||||
(super handleEvent: pEvent)
|
||||
(if (pEvent claimed?) (return 1))
|
||||
(return
|
||||
(if (== (pEvent type?) evSAID)
|
||||
(= temp2 (if (proc0_20) (gEgo has: 3) else 0))
|
||||
(cond
|
||||
(
|
||||
(and (gEgo has: 3) (Said '/chandelier,lantern[<oil]>'))
|
||||
(cond
|
||||
((Said 'extinguish,(turn<off)') (self notify: 0))
|
||||
((Said 'light,ignite,(turn<on)') (self notify: 1))
|
||||
)
|
||||
)
|
||||
((Said 'look>')
|
||||
(cond
|
||||
((Said '<out[/cave]') (Print 605 2))
|
||||
((and temp2 (Said '[<in,at]/cave[<troll,dark]')) (Print 605 3))
|
||||
(
|
||||
(and temp2 (or (Said '/dirt') (Said '<down'))) (Print 605 4))
|
||||
((and temp2 (Said '/passageway')) (Print 605 5))
|
||||
((Said '/troll') (Print 605 6))
|
||||
((gInv saidMe:) (pEvent claimed: 0))
|
||||
(else (Print 605 7) (pEvent claimed: 1))
|
||||
)
|
||||
)
|
||||
(
|
||||
(or (Said 'climb/boulder') (Said 'get/boulder')) (Print 605 8))
|
||||
((Said 'find/troll') (Print 605 6))
|
||||
((gCast contains: newAct)
|
||||
(cond
|
||||
((Said 'converse/troll') (Print 605 9))
|
||||
((Said 'kill/troll') (Print 605 10))
|
||||
((Said 'get,capture/troll') (Print 605 11))
|
||||
((or (Said 'kiss/troll') (Said 'kiss[/!*]')) (Print 605 12))
|
||||
(
|
||||
(and
|
||||
(Said 'deliver>')
|
||||
(= gInvSaidMe (gInv saidMe:))
|
||||
(gEgo has: (gInv indexOf: gInvSaidMe))
|
||||
)
|
||||
(Print 605 13)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
else
|
||||
0
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(method (newRoom newRoomNumber)
|
||||
(= local1 0)
|
||||
(= local3 0)
|
||||
(proc0_21)
|
||||
(if
|
||||
(and
|
||||
(!= newRoomNumber 77)
|
||||
(!= newRoomNumber 70)
|
||||
(not (gCast contains: newAct))
|
||||
)
|
||||
(doMusic cue:)
|
||||
)
|
||||
(super newRoom: newRoomNumber)
|
||||
)
|
||||
|
||||
(method (notify param1)
|
||||
(switch param1
|
||||
(2
|
||||
(gEgo view: 904)
|
||||
(theLight dispose:)
|
||||
)
|
||||
(3
|
||||
(gEgo view: 967)
|
||||
(theLight setLoop: 4 init:)
|
||||
)
|
||||
(1
|
||||
(gEgo view: 967)
|
||||
(theLight setLoop: 4 init:)
|
||||
(proc0_18)
|
||||
(proc0_20 1)
|
||||
)
|
||||
(0
|
||||
(gEgo view: 904)
|
||||
(theLight dispose:)
|
||||
(cond
|
||||
(local3 (gEgo dispose:) (proc0_18))
|
||||
((& (gEgo onControl: 0) $0002) (proc0_20 0))
|
||||
(else
|
||||
(gEgo dispose:)
|
||||
(proc0_18)
|
||||
(Print 605 0)
|
||||
(self setScript: gotchaScript)
|
||||
)
|
||||
)
|
||||
)
|
||||
(4
|
||||
(trollMusic client: 0 stop:)
|
||||
(if (IsObject newAct)
|
||||
(newAct setMotion: 0 setScript: 0)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance trollScript of Script
|
||||
(properties)
|
||||
|
||||
(method (doit)
|
||||
(if
|
||||
(and
|
||||
(gCast contains: newAct)
|
||||
(< (self state?) 5)
|
||||
(< (gEgo distanceTo: newAct) 5)
|
||||
)
|
||||
(self changeState: 5)
|
||||
(return)
|
||||
)
|
||||
(super doit:)
|
||||
)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(if (not local2) (= seconds 2))
|
||||
)
|
||||
(1
|
||||
(if
|
||||
(and
|
||||
(not global126)
|
||||
(or
|
||||
(== gCurRoomNum 71)
|
||||
(== gCurRoomNum 72)
|
||||
(== gCurRoomNum 74)
|
||||
(== gCurRoomNum 75)
|
||||
)
|
||||
)
|
||||
(Print 605 14 67 200 40 88)
|
||||
(= global126 1)
|
||||
((= newAct (Act new:))
|
||||
view: 190
|
||||
setAvoider: Avoid 1
|
||||
illegalBits: 0
|
||||
xStep: 5
|
||||
yStep: 2
|
||||
init:
|
||||
setCycle: Walk
|
||||
)
|
||||
(switch gCurRoomNum
|
||||
(71 (newAct posn: 230 96))
|
||||
(72 (newAct posn: 190 180))
|
||||
(74 (newAct posn: 73 166))
|
||||
(75 (newAct posn: 107 89))
|
||||
)
|
||||
(trollCaveMusic client: 0 stop:)
|
||||
(trollMusic stop: loop: 1 play:)
|
||||
else
|
||||
(if (or (!= global126 1) (== gCurRoomNum 73)) (return))
|
||||
((= newAct (Act new:))
|
||||
view: 190
|
||||
setAvoider: Avoid 1
|
||||
setCycle: Walk
|
||||
illegalBits: 0
|
||||
ignoreActors: 1
|
||||
xStep: 6
|
||||
yStep: 2
|
||||
init:
|
||||
)
|
||||
(switch gCurRoomNum
|
||||
(71
|
||||
(switch gPrevRoomNum
|
||||
(74 (newAct posn: 213 210))
|
||||
(72 (newAct posn: 250 101))
|
||||
(else (newAct posn: 179 196))
|
||||
)
|
||||
)
|
||||
(72
|
||||
(switch gPrevRoomNum
|
||||
(71 (newAct posn: 20 92))
|
||||
(75 (newAct posn: 180 220))
|
||||
(else (newAct posn: 178 154))
|
||||
)
|
||||
)
|
||||
(74
|
||||
(switch gPrevRoomNum
|
||||
(71 (newAct posn: 114 -20))
|
||||
(75 (newAct posn: 340 170))
|
||||
(else (newAct posn: 158 132))
|
||||
)
|
||||
)
|
||||
(75
|
||||
(switch gPrevRoomNum
|
||||
(74 (newAct posn: -20 170))
|
||||
(76 (newAct posn: 340 170))
|
||||
(72 (newAct posn: 140 -20))
|
||||
(else (newAct posn: 148 118))
|
||||
)
|
||||
)
|
||||
(76 (newAct posn: -40 170))
|
||||
)
|
||||
(if (== gCurRoomNum 76)
|
||||
(switch (Random 0 1)
|
||||
(0
|
||||
(newAct xStep: 6 yStep: 3)
|
||||
(gSounds eachElementDo: #stop 0)
|
||||
(trollMusic loop: 1 play:)
|
||||
)
|
||||
(1
|
||||
(newAct hide:)
|
||||
(= local2 1)
|
||||
(self changeState: 7)
|
||||
(return)
|
||||
)
|
||||
)
|
||||
else
|
||||
(trollCaveMusic client: 0 stop:)
|
||||
(trollMusic client: 0 stop: loop: 1 play:)
|
||||
)
|
||||
(proc0_18)
|
||||
)
|
||||
(if (not local2) (self cue:) (return))
|
||||
)
|
||||
(2
|
||||
(if (gCast contains: newAct)
|
||||
(newAct
|
||||
moveSpeed: 1
|
||||
cycleSpeed: 1
|
||||
setMotion: Chase gEgo 55 self
|
||||
)
|
||||
else
|
||||
(self cue:)
|
||||
)
|
||||
)
|
||||
(3
|
||||
(Print 605 15 25 4 67 200 10 88)
|
||||
(self cue:)
|
||||
)
|
||||
(4
|
||||
(if (gCast contains: newAct)
|
||||
(newAct setMotion: Chase gEgo 4 self)
|
||||
else
|
||||
(self cue:)
|
||||
)
|
||||
)
|
||||
(5
|
||||
(gotchaScript start: 1)
|
||||
(gRoom setScript: gotchaScript)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance gotchaScript of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0
|
||||
(proc0_8)
|
||||
(proc0_21)
|
||||
(trollCaveMusic client: 0 stop:)
|
||||
(trollMusic play:)
|
||||
(= seconds 5)
|
||||
)
|
||||
(1
|
||||
(proc0_8)
|
||||
(trollCaveMusic client: 0 stop:)
|
||||
(trollMusic client: 0 stop:)
|
||||
(caughtMusic play:)
|
||||
(proc0_21)
|
||||
(Print 605 16 67 -1 10)
|
||||
(= local3 1)
|
||||
(regTroll notify: 0)
|
||||
(Print 605 17 67 -1 10)
|
||||
(= seconds 4)
|
||||
)
|
||||
(2 (= global127 1))
|
||||
)
|
||||
)
|
||||
)
|
||||
|
||||
(instance theLight of Prop
|
||||
(properties
|
||||
view 967
|
||||
loop 4
|
||||
)
|
||||
|
||||
(method (init)
|
||||
(self
|
||||
posn: (gEgo x?) (- (gEgo y?) 3)
|
||||
ignoreActors: 1
|
||||
setCycle: Fwd
|
||||
priority: (- (gEgo priority?) 1)
|
||||
)
|
||||
(super init:)
|
||||
)
|
||||
|
||||
(method (doit)
|
||||
(self
|
||||
posn: (gEgo x?) (- (gEgo y?) 3)
|
||||
priority: (- (gEgo priority?) 1)
|
||||
)
|
||||
(super doit:)
|
||||
)
|
||||
)
|
||||
|
||||
(instance doMusic of Script
|
||||
(properties)
|
||||
|
||||
(method (changeState newState)
|
||||
(switch (= state newState)
|
||||
(0 (Timer setReal: self 2))
|
||||
(1
|
||||
(trollCaveMusic loop: 1 playMaybe:)
|
||||
)
|
||||
)
|
||||
)
|
||||
)
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user