The Dink Network

Reply to Fixing things in Bishop's Quest

If you don't have an account, just leave the password field blank.
Username:
Password:
Subject:
Antispam: Enter Dink Smallwood's last name (surname) below.
Formatting: :) :( ;( :P ;) :D >( : :s :O evil cat blood
Bold font Italic font hyperlink Code tags
Message:
 
 
September 29th 2003, 01:58 PM
custom_simon.gif
SimonK
Peasant He/Him Australia
 
There are a few other things that need fixing. A number of conversations Dink isn't frozen and you can't spacebar through them, or you can walk away from the conversation, or stop the conversation at the wrong time.

The green knight doesn't work properly as the graphics aren't loaded in the .ini file correctly - and the script isn't right.

These are the correct .ini lines needed to make the graphics work:
//Green Axe Knight
load_sequence GRAPHICS\grenkngt\gkgt1- 891 75 91 109 -21 -21 20 12
load_sequence GRAPHICS\grenkngt\gkgt3- 893 75 59 112 -22 -25 25 10
load_sequence GRAPHICS\grenkngt\gkgt5- 895 75 105 110 -21 -17 20 12
load_sequence GRAPHICS\grenkngt\gkgt7- 897 75 80 115 -26 -20 24 14
load_sequence GRAPHICS\grenkngt\gkgt9- 899 75 66 121 -22 -21 19 14

load_sequence GRAPHICS\grenkngt\gkgt2- 902 75 50 118 -17 -17 18 24
load_sequence GRAPHICS\grenkngt\gkgt4- 904 75 95 121 -28 -17 16 12
load_sequence GRAPHICS\grenkngt\gkgt6- 906 75 89 123 -17 -17 24 15
load_sequence GRAPHICS\grenkngt\gkgt8- 908 75 61 119 -19 -26 20 12

set_frame_special 902 6 1
set_frame_special 904 6 1
set_frame_special 906 6 1
set_frame_special 908 6 1

//make it delay on the 6th sprite for longer than 75
set_frame_delay 902 6 100
set_frame_delay 904 6 100
set_frame_delay 906 6 100
set_frame_delay 908 6 100

And the script needs to be changed...

Here is the revised greenk.c file:
//Green Axe Knight script

void main( void )
{
preload_seq(891);
preload_seq(893);
preload_seq(895);
preload_seq(897);
preload_seq(899);
preload_seq(902);
preload_seq(904);
preload_seq(906);
preload_seq(908);
sp_brain(&current_sprite, 9);
sp_speed(&current_sprite, 3);
sp_base_walk(&current_sprite, 890);
sp_base_attack(&current_sprite, 900);
sp_base_death(&current_sprite, -1);
sp_speed(&current_sprite, 4);
sp_distance(&current_sprite, 40);
sp_range(&current_sprite, 60);
sp_defense(&current_sprite, 10);
sp_strength(&current_sprite, 28);
sp_hitpoints(&current_sprite, 100);

sp_exp(&current_sprite, 800);

sp_target(&current_sprite, 1);
sp_attack_hit_sound(&current_sprite, 36);
sp_attack_hit_sound_speed(&current_sprite, 16050);

}

void hit( void )
{
int &randy = random(5, 1);
if (&randy == 2)
say("`4I will smite thee!!", &current_sprite);
sp_brain(&current_sprite, 9);
sp_target(&current_sprite, 1);
//clanging armour sound

}

void talk( void )
{
sp_target(&current_sprite, 1);
}

void attack( void )
{
&mcounter = random(1000,0);
sp_attack_wait(&current_sprite, &mcounter);
playsound(8, 8000, 0, 0, 0);
}

void die( void )
{
int &hold = sp_editor_num(&current_sprite);
if (&hold != 0)
editor_type(&hold, 1);
&save_x = sp_x(&current_sprite, -1);
&save_y = sp_y(&current_sprite, -1);
external("emake","xlgold");
}

I did send an email to Hance about this, but he may not be checking his email so often, and it seems you (Dukie) are the fixit man - being the beta tester who didn't spot these bugs