3 interface
4 const
7 var
20 //s_particles:boolean; - module
34 //load_key_tex:integer;
43 //max_particles:integer; - module
51 implementation
52 uses keyboard,particles_store,vars,maps,items,canvas,mob,worldgen,jsr75i,particles,func, player,sensor, drop, inv, furnace, items_store, video;
53 const
57 var
69 begin
72 bytecode
80 begin
86 begin
92 var
94 begin
101 begin
107 var
109 begin
114 var
116 begin
124 begin
127 begin
131 else
133 begin
137 else
140 else
145 var
148 begin
162 begin
167 var
169 begin
172 begin
175 exit;
187 var
189 begin
196 var
198 begin
205 var
207 begin
218 var
221 begin
223 repeat
226 break;
229 forever;
234 var
236 begin
239 begin
245 else
246 begin
255 var
257 begin
258 repeat
261 exit;
263 {Symbol ';' is one line commentary}
265 begin
266 repeat
269 exit;
270 forever;
274 begin
275 //Go back
277 exit;
279 forever;
283 var
286 begin
288 clearSpaces;
289 repeat
293 begin
295 exit;
299 begin
300 //Go back
303 exit;
305 else
307 forever;
311 begin
315 else
318 else
321 else
325 //Перевод строки в целое число. base - система счисления
327 var
331 begin
334 begin
340 begin
344 else
347 else
348 begin
351 exit;
359 else
364 begin
369 else
372 else
377 begin
384 var
387 begin
389 begin
392 exit;
401 else
404 else
407 else
410 else
412 begin
415 else
417 begin
420 else
422 begin
425 else
427 begin
431 else
436 var
439 begin
441 clearSpaces;
443 exit;
448 begin
451 else
454 else
457 else
460 else
463 else
465 begin
469 else
471 begin
475 else
476 {if com='KILL_MOBS' then
477 for i:=0 to 31 do
478 begin
479 mob[i].m_type:=0;
480 mob[i].m_hp:=0;
481 end;
482 else}
484 begin
488 else
489 {if com='SPAWN_MOBS' then
490 s_spawn_mob:=strToBool(nextWord);
491 else}
492 {if com='SURVIVAL' then
493 begin
494 fly:=false;
495 gamemode:=0;
496 hp:=20;
497 hunger:=20;
498 for i:=0 to 35 do
499 begin
500 inv[i].item_i:=0;
501 inv[i].sum_i:=0;
502 end;
503 end;
504 else}
506 begin
509 else
514 begin
517 else
520 else
522 halt;
523 else
526 else
527 {if com='MEGASPAWN' then
528 megaspawn;
529 else}
532 else
535 else
538 else
539 {if com='AI_UPD' then
540 ai_upd:=strToBool(nextWord);
541 else}
544 else
549 else
550 {if com='DRW_MOBS' then
551 drw_mobs:=strToBool(nextWord);
552 else}
555 else
558 else
560 begin
567 else
570 else
573 else
576 else
579 else
582 else
585 else
586 {if com='LOAD_MOB_TEX' then
587 load_mob_tex:=strToBool(nextWord);
588 else}
591 else
594 else
597 else
600 else
603 else
606 else
609 else
612 else
614 save_settings;
615 else
617 load_settings;
618 else
621 else
623 begin
627 else
629 begin
633 else
635 begin
637 //addToLog('Max items: '+decodeInt(parsed_str[1]));
639 else
641 begin
649 else
651 begin
653 //addToLog('Max blocks: '+decodeInt(parsed_str[1]));
655 else
657 begin
668 else
670 begin
672 //addToLog('Max tools: '+decodeInt(parsed_str[1]));
674 else
676 begin
683 else
685 begin
687 //addToLog('Max fuel: '+decodeInt(parsed_str[1]));
689 else
691 begin
696 else
698 begin
700 //addToLog('Max recipes: '+decodeInt(parsed_str[1]));
702 else
704 begin
709 else
711 begin
713 //addToLog('Max crafts: '+decodeInt(parsed_str[1]));
715 else
717 begin
723 else
725 begin
731 else
733 begin
736 else
738 begin
741 else
743 begin
746 else
748 resetTmpImg;
749 else
752 nextWord,
755 begin
764 tmp,
767 else
770 else
774 else
776 begin
781 else
784 else
787 else
790 else
792 swapStack;
793 else
795 dupStack;
796 else
799 else
801 begin
805 else
808 else
810 begin
814 else
816 begin
820 else
823 else
826 else
829 else
835 else
838 else
839 //addToLog('Unknown command "'+com+'"');
843 var
848 begin
852 repeat
853 ClearForm;
865 ShowForm;
866 Repaint;
868 repeat
871 begin
873 showCanvas;
874 exit;
876 else
878 begin
883 break;
885 forever;
886 forever;
890 var
894 begin
898 begin
902 else
904 begin
906 begin
911 else
913 begin
916 begin
918 begin
923 else
924 begin
929 else
930 begin
932 exit;
936 repeat
939 //addToLog('Exec: "'+str+'"');
943 else
951 initialization