! robotfindskitten
! A Zen Simulation
-! Release 7 / Serial number 121119 / Inform v6.32
+! Release 8 / Serial number 19xxxx / Inform v6.34
!
! [-] |\_/| http://www.robotfindskitten.org
! (+)=C |o o|__ Leonard Richardson (C) 1997, 2000
-! | | --*--__\ David Griffith (C) 2002 (Inform Edition)
+! | | --*--__\ David Griffith (C) 2002-2019 (Inform Edition)
! OOO C_C(____)
!
!
! using the vi/rogue movement keys. The game ends when robotfindskitten.
! Alternatively, you may end the game by hitting the Esc or Q keys.
!
-! Developed with Inform 6.21.4 as installed from NetBSD's pkgsrc tree
-! and Frotz 2.42.
-!
!
! Notes:
! 1) More than half of the code is taken up by non kitten items
!
Constant Nonkitten_Max 589;
-Release 7;
-Serial "121119"; ! Presumed release date
+Release 8;
+!Serial "19xxxx";
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Global last_message = ""; ! Always show the last-encountered message.
-Global nonkitten_count = Nonkitten_Default;
+Global nonkitten_count;
Array nonkitten_x --> Nonkitten_Max;
Array nonkitten_y --> Nonkitten_Max;
Global Real_Release = 0;
[ Main key;
-
@set_colour Fore_def Back_def;
- if (MESSAGE_NUM < Nonkitten_Max) {
+ if (MESSAGE_NUM < Nonkitten_Default) {
nonkitten_count = MESSAGE_NUM;
} else {
nonkitten_count = Nonkitten_Default;
Real_Release = (0-->1)&$03ff;
- Width = $22-->0;
- Height = $24-->0;
+ Width = $21->0;
+ Height = $20->0;
main_menu();
while (true) {
'I': print_instructions();
'A': print_about();
'T': print_thoughts();
- 'P': print_all_nki(); ! See print_all_nki() below.
}
if (key == 'Q' || key == $1b) ! $1b == ESC
break;
@set_cursor 8 30;
print "Leonard Richardson (C) 1997, 2000";
@set_cursor 9 30;
- print "David Griffith (C) 2002 (Inform Edition)";
+ print "David Griffith (C) 2002-2019 (Inform Edition)";
@set_cursor 10 30;
print " ", MESSAGE_NUM, " different nonkittens!";
Array inbuf -> INBUFSIZE;
[ set_nonkitten_count maxnum val;
-
while (true) {
@erase_window $ffff;
@split_window 5;
[ get_number min max init inbufvar ix cx len val;
-
while (true) {
inbuf->0 = (INBUFSIZE-3);
inbuf->1 = 0;
[ print_about;
-
@erase_window $ffff;
@split_window TopBar;
@set_window 1;
- Lots more comments in the source code.^
- Assorted cleanups in the source code.^
^
-Release 7 / Serial Number 040523^
-Grammatically correct release.^
-- Grammar corrections from the POSIX port added.^
-- More NKIs added (800 total).^
+Release 7 / Serial Number 130320^
+Modular release.^
+- Synchronized NKIs and removed redundancies with the POSIX port.^
+- NKIs now generated from an external file using nki2inf.pl.^
+- NKIs reduced to 723 because of redundancies and recommended deletions.^
+^
+Release 7 / Serial Number 19xxxx^
+Another release.^
+- Fixed a potential problem of wrongly determining screen size.^
^
^
Known Bugs:^
[ print_thoughts;
-
@erase_window $ffff;
@split_window TopBar;
@set_window 1;
[ draw_big_robot x y;
-
if (x == 0)
x = 1;
if (y == 0)
[ draw_big_kitten x y;
-
if (x == 0)
x = 1;
if (y == 0)
[ draw_big_kitten_psycho x y;
-
if (x == 0)
x = 1;
if (y == 0)
Global last_right = false;
[ findkitten key i;
-
@erase_window $ffff;
@split_window TopBar;
@set_window 1;
[ animate_kitten key my_last_right i j junk robot_x anim_finished;
-
switch (key) {
'8', 'J', 129: player_y++;
'2', 'K', 130: player_y--;
}
];
-
-! This function is mainly of use to members of the robotfindskitten
-! development team.
-!
-! When this function is uncommented and enabled in
-! the menu, this will cause a script file to be written which contains
-! all NKIs properly formatted.
-
-[ print_all_nki num mystring;
- @output_stream 2; @output_stream -1;
- for (num = 1: num <= MESSAGE_NUM: num++) {
- mystring = lookup_msg(num);
- print (string)lookup_msg(num), "^";
- }
- @output_stream -2; @output_stream 1;
-];