Free Hero Mesh

Check-in [e6516c4496]
Login
This is a mirror of the main repository for Free Hero Mesh. New tickets and changes will not be accepted at this mirror.
Overview
Comment:Remove the unimplemented QueueTurn instruction.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: e6516c4496066219d18e8a310c8db949b5d86c57
User & Date: user on 2021-03-31 07:04:47
Other Links: manifest | tags
Context
2021-03-31
19:26
Add the flip instruction. check-in: f292d8781e user: user tags: trunk
07:04
Remove the unimplemented QueueTurn instruction. check-in: e6516c4496 user: user tags: trunk
2021-03-30
06:32
Add the maxTrigger resource, to try to prevent some kinds of infinite loops check-in: 655771dcba user: user tags: trunk
Changes

Modified class.doc from [4e45686ad2] to [f3236ff0c1].

1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1450
1451
1452
1453
1454
1455
1456









1457
1458
1459
1460
1461
1462
1463







-
-
-
-
-
-
-
-
-







(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.

QueueTurn  ( key -- ) **
  Queue another turn after this one, using the specified key code, which
  must be a number from 0 to 255. The extra turn is not entered into the
  replay list and does not increase MoveNumber, but otherwise will act
  like any other turn. Popup messages are not removed; they will be
  retained, and these extra turns execute the input phase as though there
  is no popup quiz. (Not implemented yet. Details described here might be
  changed when it is implemented.)

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, thent the result is the same as the input.

Modified instruc from [13d4221bb0] to [44f9c7e8d7].

238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
238
239
240
241
242
243
244

245
246
247
248
249
250
251







-







ObjBottomAt
ObjClassAt
,ObjDir
ObjLayerAt
ObjTopAt
PopUp
*PopUpArgs ; for (PopUp [number])
QueueTurn ; queue another turn that automatically occurs after this one
,Rel
,Seek
.,Send
.,SendEx ; send with three arguments
SetInventory
Sound
Synchronize

Modified instruc.h from [9577840e31] to [f43425eb5f].

347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395









































396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412


413
414
415
416
417
418
419
347
348
349
350
351
352
353










































354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409


410
411
412
413
414
415
416
417
418







-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+















-
-
+
+







#define OP_OBJCLASSAT 32935
#define OP_OBJDIR 32936
#define OP_OBJDIR_C 34984
#define OP_OBJLAYERAT 32937
#define OP_OBJTOPAT 32938
#define OP_POPUP 32939
#define OP_POPUPARGS 32940
#define OP_QUEUETURN 32941
#define OP_REL 32942
#define OP_REL_C 34990
#define OP_SEEK 32943
#define OP_SEEK_C 34991
#define OP_SEND 32944
#define OP_SEND_C 34992
#define OP_SEND_D 41136
#define OP_SEND_CD 43184
#define OP_SENDEX 32945
#define OP_SENDEX_C 34993
#define OP_SENDEX_D 41137
#define OP_SENDEX_CD 43185
#define OP_SETINVENTORY 32946
#define OP_SOUND 32947
#define OP_SYNCHRONIZE 32948
#define OP_TRACE 32949
#define OP_VOLUMEAT 32950
#define OP_WINLEVEL 32951
#define OP_XDIR 32952
#define OP_XDIR_C 35000
#define OP_XYDIR 32953
#define OP_YDIR 32954
#define OP_YDIR_C 35002
#define OP_MARK 32955
#define OP_TMARK 32956
#define OP_IN 32957
#define OP_NIN 32958
#define OP_MBEGIN 32959
#define OP_ARRAY 32960
#define OP_GETARRAY 32961
#define OP_INITARRAY 32962
#define OP_SETARRAY 32963
#define OP_ARRAYCELL 32964
#define OP_FUNCTION 32965
#define OP_LOCAL 32966
#define OP_LABEL 32967
#define OP_STRING 32968
#define OP_INT16 32969
#define OP_INT32 32970
#define OP_DISPATCH 32971
#define OP_USERFLAG 32972
#define OP_REL 32941
#define OP_REL_C 34989
#define OP_SEEK 32942
#define OP_SEEK_C 34990
#define OP_SEND 32943
#define OP_SEND_C 34991
#define OP_SEND_D 41135
#define OP_SEND_CD 43183
#define OP_SENDEX 32944
#define OP_SENDEX_C 34992
#define OP_SENDEX_D 41136
#define OP_SENDEX_CD 43184
#define OP_SETINVENTORY 32945
#define OP_SOUND 32946
#define OP_SYNCHRONIZE 32947
#define OP_TRACE 32948
#define OP_VOLUMEAT 32949
#define OP_WINLEVEL 32950
#define OP_XDIR 32951
#define OP_XDIR_C 34999
#define OP_XYDIR 32952
#define OP_YDIR 32953
#define OP_YDIR_C 35001
#define OP_MARK 32954
#define OP_TMARK 32955
#define OP_IN 32956
#define OP_NIN 32957
#define OP_MBEGIN 32958
#define OP_ARRAY 32959
#define OP_GETARRAY 32960
#define OP_INITARRAY 32961
#define OP_SETARRAY 32962
#define OP_ARRAYCELL 32963
#define OP_FUNCTION 32964
#define OP_LOCAL 32965
#define OP_LABEL 32966
#define OP_STRING 32967
#define OP_INT16 32968
#define OP_INT32 32969
#define OP_DISPATCH 32970
#define OP_USERFLAG 32971
#ifdef HEROMESH_CLASS
static const Op_Names op_names[]={
{"*",8486937},
{"+",8421399},
{"-",8421400},
{"-rot",8421382},
{".",10518528},
{"/",8486938},
{"ANHH",8389394},
{"ARRIVED",8389124},
{"Animate",8421508},
{"AnimateDead",8421509},
{"Arg1",8552565},
{"Arg2",8552566},
{"Arg3",8552567},
{"Array",8683712},
{"ArrayCell",8421572},
{"Array",8683711},
{"ArrayCell",8421571},
{"Arrivals",8618083},
{"Arrived",8618081},
{"Assassinate",8487046},
{"B",9437196},
{"BANG",8389380},
{"BEDOINGNG",8389406},
{"BEEDEEP",8389404},
474
475
476
477
478
479
480
481

482
483
484
485
486
487
488
489
490
491
492
493
494
495
496

497
498
499
500
501
502
503
473
474
475
476
477
478
479

480
481
482
483
484
485
486
487
488
489
490
491
492
493
494

495
496
497
498
499
500
501
502







-
+














-
+







{"FROG",8389383},
{"Finished",8552571},
{"FlushClass",8421522},
{"FlushObj",8487059},
{"From",8421492},
{"GLASS",8389379},
{"GLISSANT",8389419},
{"GetArray",8421569},
{"GetArray",8421568},
{"GetInventory",8421524},
{"HAWK",8389425},
{"HEARTBEAT",8389407},
{"HIT",8389134},
{"HITBY",8389135},
{"Hard",8618063},
{"Height",9142345},
{"HeightAt",8421525},
{"Help",8683649},
{"INIT",8389120},
{"IgnoreKey",8421526},
{"Image",8618046},
{"InPlace",8683647},
{"Inertia",9142335},
{"InitArray",8421570},
{"InitArray",8421569},
{"Input",8683645},
{"IntMove",10584215},
{"Invisible",8618086},
{"JAYAYAYNG",8389416},
{"JUMPED",8389128},
{"JumpTo",10584216},
{"KEWEL",8389422},
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567

568
569
570
571
572
573
574
575
576
577

578
579
580
581
582




583
584
585
586
587

588
589
590

591
592
593
594
595
596

597
598
599
600
601
602
603
604
605

606
607
608
609
610
611
612



613
614

615
616
617

618
619
620
621
622
623
624
551
552
553
554
555
556
557

558
559
560
561
562
563
564

565
566
567
568
569
570
571
572
573
574

575
576




577
578
579
580
581
582
583
584

585
586
587

588
589
590
591
592
593

594
595
596
597
598
599
600
601
602

603
604
605
606
607



608
609
610
611

612
613
614

615
616
617
618
619
620
621
622







-







-
+









-
+

-
-
-
-
+
+
+
+




-
+


-
+





-
+








-
+




-
-
-
+
+
+

-
+


-
+







{"ObjTopAt",8421546},
{"PLAYERMOVING",8389133},
{"POSTINIT",8389138},
{"POUR",8389377},
{"POWER",8389386},
{"Player",8487023},
{"PopUp",8421547},
{"QueueTurn",8421549},
{"Quiz",8683646},
{"R",9437198},
{"RATCHET1",8389418},
{"RATCHET2",8389412},
{"RATTLE",8389403},
{"RB",9437197},
{"RF",9437199},
{"Rel",8487086},
{"Rel",8487085},
{"S",9437190},
{"SE",9437191},
{"SMALL_POP",8389389},
{"SPLASH",8389376},
{"STEAM",8389424},
{"STOP",8388608},
{"SUBS",8683651},
{"SUNK",8389131},
{"SW",9437189},
{"Seek",8487087},
{"Seek",8487086},
{"Self",8421490},
{"Send",10584240},
{"SendEx",10584241},
{"SetArray",8421571},
{"SetInventory",8421554},
{"Send",10584239},
{"SendEx",10584240},
{"SetArray",8421570},
{"SetInventory",8421553},
{"Shape",8618042},
{"ShapeDir",8618065},
{"Sharp",8618064},
{"Shovable",8618066},
{"Sound",8421555},
{"Sound",8421554},
{"Stealthy",8618091},
{"Strength",9142349},
{"Synchronize",8421556},
{"Synchronize",8421555},
{"TAHTASHH",8389409},
{"THMP_thmp",8389405},
{"THWIT",8389384},
{"TICK",8389391},
{"Temperature",9142328},
{"Trace",8421557},
{"Trace",8421556},
{"UH_OH",8389382},
{"UNCORK",8389414},
{"UNHH",8389381},
{"UserSignal",8618088},
{"UserState",8618089},
{"VACUUM",8389411},
{"VisualOnly",8618090},
{"Volume",9142341},
{"VolumeAt",8421558},
{"VolumeAt",8421557},
{"W",9437188},
{"WAHOO",8389400},
{"WHACK",8389423},
{"Weight",9142343},
{"WinLevel",8421559},
{"XDir",8487096},
{"XYDir",8421561},
{"WinLevel",8421558},
{"XDir",8487095},
{"XYDir",8421560},
{"Xloc",8486971},
{"YDir",8487098},
{"YDir",8487097},
{"YEEHAW",8389401},
{"Yloc",8486972},
{"_",8421563},
{"_",8421562},
{"a?",8421430},
{"again",8683534},
{"band",8421407},
{"begin",8683533},
{"bit",8683555},
{"bit0",8388609},
{"bit1",8388610},
662
663
664
665
666
667
668
669

670
671
672
673
674
675
676
677
678
679

680
681
682
683
684
685

686
687
688
689
690
691
692
693
694
695
696
697
698

699
700
701
702
703

704
660
661
662
663
664
665
666

667
668
669
670
671
672
673
674
675
676

677
678
679
680
681
682

683
684
685
686
687
688
689
690
691
692
693
694
695

696
697
698
699
700

701
702







-
+









-
+





-
+












-
+




-
+

{"el",8683532},
{"else",8683530},
{"eq",8421416},
{"for",8683538},
{"ge",8486956},
{"gt",8486954},
{"if",8683529},
{"in",8421565},
{"in",8421564},
{"is",8421422},
{"land",8421412},
{"le",8486957},
{"lnot",8421415},
{"lor",8421413},
{"lsh",8421405},
{"lt",8486955},
{"lxor",8421414},
{"m?",8421426},
{"mbegin",8683711},
{"mbegin",8683710},
{"mod",8486939},
{"n?",8421423},
{"ne",8421417},
{"neg",8421404},
{"next",8683539},
{"nin",8421566},
{"nin",8421565},
{"nip",8421379},
{"o?",8421428},
{"over",8421384},
{"oz?",8421429},
{"pick",8421383},
{"repeat",8683537},
{"ret",8421398},
{"rot",8421381},
{"rsh",8486942},
{"s?",8421427},
{"swap",8421378},
{"then",8683531},
{"tmark",8421564},
{"tmark",8421563},
{"tuck",8421380},
{"until",8683535},
{"while",8683536},
};
#define N_OP_NAMES 304
#define N_OP_NAMES 303
#endif