1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
--
macro AimGun2
global aim1
set aim1 = aim2(mNew)
--
factory aim2
method mNew
dontpassevent
global aim1
when mousedown then aim1(fire)
when keydown then aim1(mExit)
set the locv of sprite 24 to 540
method mMove x, y
global aimCopy
set the locH of sprite 15 to x
set the locV of sprite 15 to y-250
aimCopy = me
method mAtFrame
dontpassevent
me(mMove, the mouseH, the mouseV)
method fire
global fire1, targeth, targetv
set fire1 = fire2(mNew)
set the perframehook to fire1
me(mDispose)
method mExit
set the perframehook to false
postfire
me(mDispose)
method mDispose
global aim1
set aim1 = 1
when keydown then nothing
--
factory fire2
method mNew
dontpassevent
when mousedown then nothing
set the castnum of sprite 14 to f15
method mAtFrame
Global StartH, StartV, targetv, stepH, stepV, bcast
dontpassevent
set the castnum of sprite 14 to bcast
set the LocV of sprite 14 to (startV-stepV)
if sprite 14 intersects 10 and (startV-6) <= targetV then
set the castnum of sprite 14 to f16
set the perframehook to false
me(hit)
exit
end if
if startV < targetV or bcast>g17 then
set the perframehook to false
set the locV of sprite 14 to 340
aimgun2
exit
end if
set startV to (startV-stepV)
set bcast = bcast + 1
method hit
global KillLoc
set killloc to the loch of sprite 3
go "Death"
set the locV of sprite 14 to 400
aimgun2
method mDispose
global fire1
set fire1 = 0
Method mNew2 theSprite, startCastRight, endCastRight, startCastLeft, endCastLeft
instance startDrawLeft, endDrawLeft, startDrawRight, endDrawRight, multiDrawP
if startCastLeft and endCastLeft then set multiDrawP to TRUE
set startDrawLeft to startCastRight
set endDrawLeft to endCastRight
set startDrawRight to startCastLeft
set endDrawRight to endCastLeft
me(mInitBirdPart, theSprite, startCastRight)
Method mAtFrame2 frame, subFrame
global gMouseH, gMouseV
set gMouseH = mouseH()
set gMouseV = mouseV()
-- Exit when "Done" button, which resides upon score channel 6.
if (the clickOn = 6) then exit
put the mouseDown into mouseClick
Body(mEveryFrame, mouseClick)
RightWing(mEveryFrame, mouseClick)
LeftWing(mEveryFrame, mouseClick)
--
macro KillIt2
global KillLoc
set the locH of sprite 3 to KillLoc
|