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,mobs,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
477 begin
481 else
482 {if com='SPAWN_MOBS' then
483 s_spawn_mob:=strToBool(nextWord);
484 else}
485 {if com='SURVIVAL' then
486 begin
487 fly:=false;
488 gamemode:=0;
489 hp:=20;
490 hunger:=20;
491 for i:=0 to 35 do
492 begin
493 inv[i].item_i:=0;
494 inv[i].sum_i:=0;
495 end;
496 end;
497 else}
499 begin
502 else
507 begin
510 else
513 else
515 halt;
516 else
519 else
520 {if com='MEGASPAWN' then
521 megaspawn;
522 else}
525 else
528 else
531 else
532 {if com='AI_UPD' then
533 ai_upd:=strToBool(nextWord);
534 else}
537 else
542 else
543 {if com='DRW_MOBS' then
544 drw_mobs:=strToBool(nextWord);
545 else}
548 else
551 else
553 begin
560 else
563 else
566 else
569 else
572 else
575 else
578 else
579 {if com='LOAD_MOB_TEX' then
580 load_mob_tex:=strToBool(nextWord);
581 else}
584 else
587 else
590 else
593 else
596 else
599 else
602 else
605 else
607 save_settings;
608 else
610 load_settings;
611 else
614 else
616 begin
620 else
622 begin
626 else
628 begin
630 //addToLog('Max items: '+decodeInt(parsed_str[1]));
632 else
634 begin
642 else
644 begin
646 //addToLog('Max blocks: '+decodeInt(parsed_str[1]));
648 else
650 begin
661 else
663 begin
665 //addToLog('Max tools: '+decodeInt(parsed_str[1]));
667 else
669 begin
676 else
678 begin
680 //addToLog('Max fuel: '+decodeInt(parsed_str[1]));
682 else
684 begin
689 else
691 begin
693 //addToLog('Max recipes: '+decodeInt(parsed_str[1]));
695 else
697 begin
702 else
704 begin
706 //addToLog('Max crafts: '+decodeInt(parsed_str[1]));
708 else
710 begin
716 else
718 begin
724 else
726 begin
729 else
731 begin
734 else
736 begin
739 else
741 resetTmpImg;
742 else
745 nextWord,
748 begin
757 tmp,
760 else
763 else
767 else
769 begin
774 else
777 else
780 else
783 else
785 swapStack;
786 else
788 dupStack;
789 else
792 else
794 begin
798 else
801 else
803 begin
807 else
809 begin
813 else
816 else
819 else
822 else
828 else
831 else
832 //addToLog('Unknown command "'+com+'"');
836 var
841 begin
845 repeat
846 ClearForm;
858 ShowForm;
859 Repaint;
861 repeat
864 begin
866 showCanvas;
867 exit;
869 else
871 begin
876 break;
878 forever;
879 forever;
883 var
887 begin
891 begin
895 else
897 begin
899 begin
904 else
906 begin
909 begin
911 begin
916 else
917 begin
922 else
923 begin
925 exit;
929 repeat
932 //addToLog('Exec: "'+str+'"');
936 else
944 initialization