Free Hero Mesh

Diff
Login
This is a mirror of the main repository for Free Hero Mesh. New tickets and changes will not be accepted at this mirror.

Differences From Artifact [fcbb96f739]:

To Artifact [b11e8f2620]:


1630
1631
1632
1633
1634
1635
1636




1637
1638
1639
1640
1641
1642
1643
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647







+
+
+
+







  As ,MoveTo but sends JUMPED message to that object after it has been
  successfully teleported.

Key  ( -- number )
  During the input phase, the key input. During other phases, zero. During
  the input phase of coordinate input, this value will be 1.

,Key  ( -- number true | false )
  If the key (as for Key command) is '1 to '9 or 'A to 'Z then it will be
  the corresponding array index (as for %Q) and true, otherwise false.

land  ( in1 in2 -- out )
  Logical AND.

le  ( in1 in2 -- bool )
  Test if first input is less or equal to second input (unsigned).

,le  ( in1 in2 -- bool )
1890
1891
1892
1893
1894
1895
1896












1897
1898
1899
1900
1901
1902
1903
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919







+
+
+
+
+
+
+
+
+
+
+
+







(PopUp <number>)  ( string args... -- )
  Displays a popup message, like PopUp does. However, this one allows the
  string to contain substitution codes; see the section below about what
  substitution codes are allowed in popup messages. Each substitution code
  consumes some number of arguments, from bottom to top. The number of
  arguments must be 0 to 32.

Quiz  ( -- ) **
  If used after PopUp, makes dismissing the popup message to send a KEY
  message to this object instead of any other one.

,Quiz  ( any -- ) **
  If used after PopUp, makes dismissing the popup message to send a KEY
  message to the specified object instead of any other one. If you specify
  a class, then it will create an object of that class and use that one.
  If you specify a message, then it will send that message to the Control
  object, similar to specifying the Control object itself but will use the
  specified message instead of KEY.

Rel  ( dir -- dir )
  Resolves a relative direction to an absolute direction.

,Rel  ( obj dir -- dir )
  Resolves a relative direction to an absolute direction, using the
  direction of the specified object as the base. If zero is specified
  instead of a valid object, then the result is the same as the input.
2240
2241
2242
2243
2244
2245
2246





2247
2248
2249
2250
2251
2252
2253
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274







+
+
+
+
+








%i
  Display a picture. Consumes two arguments, being first a class and then
  the image number. If either argument is not valid, displays nothing. The
  picture may take up multiple lines of space; the lines will be moved
  farther apart to make room if necessary.

%Q
  Display a quiz button from 1 to 9 or A to Z, depending on the current
  array index. This is only valid inside of a %[ ... %] block, and it does
  not itself consume any argument.

%R
  Display a roman number.

%s
  Display a string. If the value is not a string, it will display it as
  whatever type it is.

2277
2278
2279
2280
2281
2282
2283












2284
2285
2286
2287
2288
2289
2290
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323







+
+
+
+
+
+
+
+
+
+
+
+








%<
  Unconsume one argument. (Does not produce any output.)

%>
  Skip one argument. (Does not produce any output.)

%[
  Consumes one argument, which must be an array; no further arguments can
  be accessible in this case. If it is not an array then all further output
  is suppressed (even past the end of this block, too). This cannot occur
  more than once. The second dimension is the number of records, and the
  first is the fields within that record; all further data accessed by the
  substitution codes are the data within the array.

%]
  End of an array block; if there are any more records in the array then it
  will access the next record and go back to the beginning of this block.


=== Messages ===

This section describes when the various standard messages are sent to
objects, and what return values are expected. (Do not confuse CREATE with
CREATED, or DESTROY with DESTROYED, or COLLIDE with COLLIDING; they have
different purposes.)