1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
|
animation, ONCE to play the animation once (and to queue a LASTIMAGE
event if the animation isn't changed before that happens; note that
the message is sent even before the animation is actually visible),
LOOP to play it in a loop, or OSCLOOP for an oscillating loop. The
delay between frames is in centiseconds; the start and end are the
image numbers in this class, and may be ascending or descending.
AnimateDead ( x y class start end delay -- )
Create a dead animation, at the specified coordinates. Give the class
to use the pictures of, and the start and end image number, and the
delay between frames in centiseconds. This will draw the animation on
the screen without being associated with any object; this animation is
purely visual and does not affect the game state. The animation will
play once and then it will disappear.
Arg1 ( -- value )
The first message argument.
=Arg1 ( value -- )
Allows setting the first message argument. This will last until the
current message returns, and does not affect further messages sent; it
allows Arg1 to be used as a mutable local variable.
|
>
>
>
>
>
>
>
>
>
>
>
>
>
>
|
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
|
animation, ONCE to play the animation once (and to queue a LASTIMAGE
event if the animation isn't changed before that happens; note that
the message is sent even before the animation is actually visible),
LOOP to play it in a loop, or OSCLOOP for an oscillating loop. The
delay between frames is in centiseconds; the start and end are the
image numbers in this class, and may be ascending or descending.
=Animate ( mode start end delay -- ) **
Set animation for this object, in a similar but different way than
Animate does. There is no animation limit if this command is used,
and this does not set Image. The mode can be: 0=stop, 1=logical once,
2=logical/visual once, 3=visual once, 4=visual looped, 5=visual looped
oscillating, 6=visual synchronized (the delay is now the slot number
instead), 7=logical once (also set Image). You can add 8 to set the
initial visible image to the Image variable instead of the start image,
and you can add 16 to start at half phase.
AnimateDead ( x y class start end delay -- )
Create a dead animation, at the specified coordinates. Give the class
to use the pictures of, and the start and end image number, and the
delay between frames in centiseconds. This will draw the animation on
the screen without being associated with any object; this animation is
purely visual and does not affect the game state. The animation will
play once and then it will disappear.
=AnimateDead ( delay -- )
Define the delay (in centiseconds) for the most recent dead animation.
If there isn't one, then this command does nothing.
Arg1 ( -- value )
The first message argument.
=Arg1 ( value -- )
Allows setting the first message argument. This will last until the
current message returns, and does not affect further messages sent; it
allows Arg1 to be used as a mutable local variable.
|
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
|
swap ,Yloc" (but more efficient).
LocateMe ( -- )
Makes the current object especially visible. This is meant to help the
player to notice where the "Hero" object is more easily, but you can use
it to make other objects noticeable too if that is appropriate.
lor ( in1 in2 -- out )
Logical OR.
LoseLevel ( -- )
Ends all execution and results in loss of game.
lsh ( in shift -- out )
|
>
>
>
|
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
|
swap ,Yloc" (but more efficient).
LocateMe ( -- )
Makes the current object especially visible. This is meant to help the
player to notice where the "Hero" object is more easily, but you can use
it to make other objects noticeable too if that is appropriate.
,LocateMe ( obj -- )
Is like LocateMe but for a specified object instead of this one.
lor ( in1 in2 -- out )
Logical OR.
LoseLevel ( -- )
Ends all execution and results in loss of game.
lsh ( in shift -- out )
|
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
|
,-Move ( obj dir -- bool ) **
As -Move but for a specified object rather than necessarily this one.
MoveNumber ( -- number )
The current move number. This is initially zero, and is advanced after
each input phase (before the beginning phase).
MoveTo ( x y -- bool ) **
Teleports this object to the specified coordinates; the MOVING message
(and PLAYERMOVING if applicable) are sent to check if it is allowed.
This also updates the Distance variable, and will deal with arrivals and
departures, and send FLOATED and SUNK messages as appropriate.
,MoveTo ( obj x y -- bool ) **
|
>
>
>
|
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
|
,-Move ( obj dir -- bool ) **
As -Move but for a specified object rather than necessarily this one.
MoveNumber ( -- number )
The current move number. This is initially zero, and is advanced after
each input phase (before the beginning phase).
=MoveNumber ( number -- ) **
Allows changing the MoveNumber value.
MoveTo ( x y -- bool ) **
Teleports this object to the specified coordinates; the MOVING message
(and PLAYERMOVING if applicable) are sent to check if it is allowed.
This also updates the Distance variable, and will deal with arrivals and
departures, and send FLOATED and SUNK messages as appropriate.
,MoveTo ( obj x y -- bool ) **
|