49b9435b2a561e9b72e8bfd2a6b3fe1eb16d77bd
3 interface
4 const
7 var
20 //s_particles:boolean; - module
34 //load_key_tex:integer;
42 //max_particles:integer; - module
50 implementation
51 uses keyboard,particles_store,vars,maps,items,canvas,mob,worldgen,jsr75i,particles,func, player,sensor, drop, inv, furnace, items_store, video;
52 const
56 var
70 begin
73 bytecode
81 begin
87 begin
93 var
95 begin
102 begin
108 var
110 begin
115 var
117 begin
125 begin
128 begin
132 else
134 begin
138 else
141 else
146 var
149 begin
163 begin
168 var
170 begin
173 begin
176 exit;
188 var
190 begin
197 var
199 begin
206 var
208 begin
219 var
222 begin
224 repeat
227 break;
230 forever;
235 var
237 begin
240 begin
246 else
247 begin
256 var
258 begin
259 repeat
262 exit;
264 {Symbol ';' is one line commentary}
266 begin
267 repeat
270 exit;
271 forever;
275 begin
276 //Go back
278 exit;
280 forever;
284 var
287 begin
289 clearSpaces;
290 repeat
294 begin
296 exit;
300 begin
301 //Go back
304 exit;
306 else
308 forever;
312 begin
316 else
319 else
322 else
326 //Перевод строки в целое число. base - система счисления
328 var
332 begin
335 begin
341 begin
345 else
348 else
349 begin
352 exit;
360 else
365 begin
370 else
373 else
378 begin
385 var
388 begin
390 begin
393 exit;
402 else
405 else
408 else
411 else
413 begin
416 else
418 begin
421 else
423 begin
426 else
428 begin
432 else
437 var
440 begin
442 clearSpaces;
444 exit;
449 begin
452 else
455 else
458 else
461 else
464 else
466 begin
470 else
472 begin
476 else
477 {if com='KILL_MOBS' then
478 for i:=0 to 31 do
479 begin
480 mob[i].m_type:=0;
481 mob[i].m_hp:=0;
482 end;
483 else}
485 begin
489 else
490 {if com='SPAWN_MOBS' then
491 s_spawn_mob:=strToBool(nextWord);
492 else}
493 {if com='SURVIVAL' then
494 begin
495 fly:=false;
496 gamemode:=0;
497 hp:=20;
498 hunger:=20;
499 for i:=0 to 35 do
500 begin
501 inv[i].item_i:=0;
502 inv[i].sum_i:=0;
503 end;
504 end;
505 else}
507 begin
510 else
515 begin
518 else
521 else
523 halt;
524 else
527 else
528 {if com='MEGASPAWN' then
529 megaspawn;
530 else}
533 else
536 else
539 else
540 {if com='AI_UPD' then
541 ai_upd:=strToBool(nextWord);
542 else}
545 else
550 else
551 {if com='DRW_MOBS' then
552 drw_mobs:=strToBool(nextWord);
553 else}
556 else
559 else
561 begin
568 else
571 else
574 else
577 else
580 else
583 else
586 else
587 {if com='LOAD_MOB_TEX' then
588 load_mob_tex:=strToBool(nextWord);
589 else}
592 else
595 else
598 else
601 else
604 else
607 else
610 else
613 else
615 save_settings;
616 else
618 load_settings;
619 else
622 else
624 begin
628 else
630 begin
634 else
636 begin
638 //addToLog('Max items: '+decodeInt(parsed_str[1]));
640 else
642 begin
650 else
652 begin
654 //addToLog('Max blocks: '+decodeInt(parsed_str[1]));
656 else
658 begin
669 else
671 begin
673 //addToLog('Max tools: '+decodeInt(parsed_str[1]));
675 else
677 begin
684 else
686 begin
688 //addToLog('Max fuel: '+decodeInt(parsed_str[1]));
690 else
692 begin
697 else
699 begin
701 //addToLog('Max recipes: '+decodeInt(parsed_str[1]));
703 else
705 begin
710 else
712 begin
714 //addToLog('Max crafts: '+decodeInt(parsed_str[1]));
716 else
718 begin
724 else
726 begin
732 else
734 begin
737 else
739 begin
742 else
745 else
747 resetTmpImg;
748 else
751 nextWord,
754 begin
763 tmp,
766 else
769 else
773 else
775 begin
780 else
783 else
786 else
789 else
791 swapStack;
792 else
794 dupStack;
795 else
798 else
800 begin
804 else
807 else
809 begin
813 else
815 begin
819 else
822 else
825 else
828 else
834 else
837 else
838 //addToLog('Unknown command "'+com+'"');
842 var
847 begin
851 repeat
852 ClearForm;
864 ShowForm;
865 Repaint;
867 repeat
870 begin
872 showCanvas;
873 exit;
875 else
877 begin
882 break;
884 forever;
885 forever;
889 var
893 begin
900 begin
904 else
906 begin
908 begin
913 else
915 begin
918 begin
920 begin
925 else
926 begin
931 else
932 begin
935 exit;
939 repeat
942 //addToLog('Exec: "'+str+'"');
946 else
953 initialization