Added saving on pause and moved autosave to a separate file. Save/load now works by line and obj_dialogue advances to the specified line when loading a scene script

This commit is contained in:
Jennifer Hogueison 2023-06-06 23:53:55 -07:00
parent d7877279b1
commit c6f8f5f466
19 changed files with 4381 additions and 41 deletions

File diff suppressed because it is too large Load Diff

View File

@ -8,6 +8,7 @@ textlinefadein = 0;
text_advance_ready = TEXT_LOADING;
text_auto_mode = AUTO_OFF;
text_auto_timer = AUTO_SPEED;
text_loader_skip = global.loaded_file[? SAVE_LINENUM];
speaker_name = "";
bg_id = BG_NONE;

View File

@ -27,6 +27,7 @@ if (global.dialogue_mode) {
) {
text_advance_ready = TEXT_TYPING;
//bg files
bg_id_last = bg_id;
bg_id = ds_queue_dequeue(bg_test);
switch ( bg_id ) {
@ -38,12 +39,54 @@ if (global.dialogue_mode) {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
case BG_KOMEIJI_LIBRARY: {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
case BG_KOMEIJI_OUTSIDE: {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
case BG_JOB_AGENCY: {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
case BG_OFFICE_PLAIN: {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
case BG_OFFICE_DECOR: {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
case BG_OFFICE_WAITING: {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
case BG_MISTY_LAKE: {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
case BG_BAMBOO_FOREST: {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
case BG_MORIYA_SHRINE: {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
case BG_HUMAN_VILLAGE: {
bg_sprite = spr_bg_PLACEHOLDER;
break;
}
default: {
bg_sprite = -1;
break;
}
}
//music files
mus_id_last = mus_id;
mus_id = ds_queue_dequeue(mus_test);
if ( mus_id_last != mus_id ) {
@ -69,6 +112,8 @@ if (global.dialogue_mode) {
}
}
//sound effects
sound_id = ds_queue_dequeue(sound_test);
switch ( sound_id ) {
case SOUND_NONE: {
@ -88,11 +133,14 @@ if (global.dialogue_mode) {
audio_play_sound( sound_playing, 1, false );
}
//display modes
display_mode = ds_queue_dequeue(display_test);
if ( display_mode == DISPLAY_NOTEXT && text_auto_mode == AUTO_OFF ) {
text_auto_mode = AUTO_NEXT;
}
//portrait sprites
actor_A_pos = ds_queue_dequeue(pos_test);
actor_A_sprite_id_last = actor_A_sprite_id;
actor_A_sprite_id = ds_queue_dequeue(sprite_test);
@ -108,6 +156,55 @@ if (global.dialogue_mode) {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_KOISHI: {
actor_A_sprite = spr_talk_koishi;
break;
}
case TALK_SATORI: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_SAKUYA: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_CIRNO: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_DAIYOUSEI: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_KAGUYA: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_MOKOU: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_RIN: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_UTSUHO: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_KANOKO: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_SUWAKO: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_SANAE: {
actor_A_sprite = spr_talk_PLACEHOLDER;
break;
}
default: {
actor_A_sprite = -1;
break;
@ -129,6 +226,55 @@ if (global.dialogue_mode) {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_KOISHI: {
actor_B_sprite = spr_talk_koishi;
break;
}
case TALK_SATORI: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_SAKUYA: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_CIRNO: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_DAIYOUSEI: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_KAGUYA: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_MOKOU: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_RIN: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_UTSUHO: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_KANOKO: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_SUWAKO: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_SANAE: {
actor_B_sprite = spr_talk_PLACEHOLDER;
break;
}
default: {
actor_B_sprite = -1;
break;
@ -150,14 +296,65 @@ if (global.dialogue_mode) {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_KOISHI: {
actor_C_sprite = spr_talk_koishi;
break;
}
case TALK_SATORI: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_SAKUYA: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_CIRNO: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_DAIYOUSEI: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_KAGUYA: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_MOKOU: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_RIN: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_UTSUHO: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_KANOKO: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_SUWAKO: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
case TALK_SANAE: {
actor_C_sprite = spr_talk_PLACEHOLDER;
break;
}
default: {
actor_C_sprite = -1;
break;
}
}
//speaker name
speaker_name = ds_queue_dequeue(speaker_test);
//spoken text
textload = ds_queue_dequeue(text_test);
texttarget = string_replace_all(textload, "#", "\n" );
@ -181,7 +378,7 @@ if (global.dialogue_mode) {
spewlength++;
}
textlinefadein++;
if (keyboard_check_pressed(ord("Z")) || keyboard_check(vk_control)) {
if (keyboard_check_pressed(ord("Z")) || keyboard_check(vk_control) || text_loader_skip > 0) {
textlinefadein = 1000;
keyboard_clear(ord("Z"));
keyboard_clear(vk_control);
@ -195,7 +392,7 @@ if (global.dialogue_mode) {
textspew += string_char_at(texttarget, spewlength);
audio_play_sound( snd_typewriter, 0, false );
spewlength++;
if (keyboard_check_pressed(ord("Z")) || keyboard_check(vk_control)) {
if (keyboard_check_pressed(ord("Z")) || keyboard_check(vk_control) || text_loader_skip > 0) {
textspew = texttarget;
keyboard_clear(ord("Z"));
keyboard_clear(vk_control);
@ -208,10 +405,15 @@ if (global.dialogue_mode) {
if (text_advance_ready == TEXT_READY) {
text_auto_timer--;
if ( keyboard_check_pressed(ord("Z")) || keyboard_check(vk_control) || (text_auto_timer <= 0 && (text_auto_mode == AUTO_NEXT || text_auto_mode == AUTO_ON)) ) {
if ( keyboard_check_pressed(ord("Z")) || keyboard_check(vk_control) || text_loader_skip > 0 || (text_auto_timer <= 0 && (text_auto_mode == AUTO_NEXT || text_auto_mode == AUTO_ON)) ) {
if (text_auto_mode == AUTO_NEXT ) {
text_auto_mode = AUTO_OFF;
}
if (text_loader_skip > 0) {
text_loader_skip--;
} else {
global.loaded_file[? SAVE_LINENUM]++;
}
text_auto_timer = AUTO_SPEED;
textlinefadein = 0;
text_advance_ready = TEXT_LOADING;

View File

@ -4,3 +4,9 @@ menu_wait = MENU_DELAY;
dx = 0;
dy = 0;
surface_mult = global.options[? OPTIONS_WINDOWMULT];
save_check = false;
save_allowed = false;
unpause_allowed = false;
save_display = 0;
escape_allowed = false;

View File

@ -6,7 +6,7 @@ if (pause) {
if (paused_surface == -1) {
instance_deactivate_all(true);
}
surface_mult = global.options[? OPTIONS_WINDOWMULT];
surface_mult = 1;
paused_surface = surface_create(view_get_wport(view_camera[0]) * surface_mult, view_get_wport(view_camera[0]) * surface_mult);
surface_set_target(paused_surface);
draw_surface(application_surface, 0, 0);
@ -20,7 +20,15 @@ if (pause) {
draw_set_halign(fa_center);
draw_set_color(c_fuchsia);
draw_text(dx + 320, dy + 170, "Paused, press P to continue");
draw_text(dx + 320, dy + 220, "press S to save");
draw_text(dx + 320, dy + 270, "press ESC to exit");
draw_set_color(c_white);
draw_set_halign(fa_left);
}
}
if (save_display > 0) {
draw_set_halign(fa_right);
draw_text_ext_transformed_color_border(600, 320, "Saving...", 20, 150, 1, 1, 0, c_green, c_orange, c_green, c_orange, 1, 1, c_fuchsia);
draw_set_halign(fa_left);
}

View File

@ -1,7 +1,26 @@
menu_wait--;
save_display--;
if menu_wait <= 0 {
save_allowed = true;
unpause_allowed = true;
escape_allowed = true;
}
if (keyboard_check_pressed(ord("S")) && save_allowed == true) {
save_check = true;
save_allowed = false;
menu_wait = MENU_DELAY;
}
if (save_check == true) {
scr_files_save( global.load_file_name );
save_check = false;
save_display = MENU_DELAY;
}
if (keyboard_check_pressed(ord("P")) && menu_wait <= 0) {
if (keyboard_check_pressed(ord("P")) && unpause_allowed == true) {
menu_wait = MENU_DELAY;
pause = !pause;
if (!pause) {
@ -13,3 +32,14 @@ if (keyboard_check_pressed(ord("P")) && menu_wait <= 0) {
if (pause) {
//put things here to prevent alarms from counting down
}
if (keyboard_check_pressed(vk_escape) && escape_allowed == true) {
menu_wait = MENU_DELAY;
pause = !pause;
if (!pause) {
instance_activate_all();
surface_free(paused_surface);
paused_surface = -1;
}
room_goto(rm_title);
}

View File

@ -3,6 +3,10 @@ countdown--;
if (countdown == 0 ) {
//load file
var save_check = scr_files_load( global.load_file_name );
if (global.autosave_load == true) {
global.autosave_load = false;
save_check = scr_files_load( SAVE_AUTOSAVE );
}
if (save_check == FILE_LOAD_FAIL) {
scr_files_load( SAVE_DEFAULTS );
}

View File

@ -1,14 +1,64 @@
fade_in = 50;
if (global.loaded_file[? SAVE_POINT] > SCENE_TOTAL ) {
if (global.loaded_file[? SAVE_CHNUM] > SCENE_TOTAL ) {
room_goto(rm_ending);
}
if (!global.scene_mode && global.loaded_file[? SAVE_POINT] == SAVE_POINT_START) {
if (!global.scene_mode && global.loaded_file[? SAVE_CHNUM] == 0) {
global.scene_mode = true;
global.scene_number = scene_TEST;
global.scene_number = SCENE_TEST;
timeline_position = 0;
timeline_index = tml_scene_test;
timeline_running = true;
}
if (!global.scene_mode && global.loaded_file[? SAVE_CHNUM] == 1) {
global.scene_mode = true;
global.scene_number = SCENE_TEST;
timeline_position = 0;
timeline_index = tml_scene_test;
timeline_running = true;
}
if (!global.scene_mode && global.loaded_file[? SAVE_CHNUM] == 2) {
global.scene_mode = true;
global.scene_number = SCENE_TEST;
timeline_position = 0;
timeline_index = tml_scene_test;
timeline_running = true;
}
if (!global.scene_mode && global.loaded_file[? SAVE_CHNUM] == 3) {
global.scene_mode = true;
global.scene_number = SCENE_TEST;
timeline_position = 0;
timeline_index = tml_scene_test;
timeline_running = true;
}
if (!global.scene_mode && global.loaded_file[? SAVE_CHNUM] == 4) {
global.scene_mode = true;
global.scene_number = SCENE_TEST;
timeline_position = 0;
timeline_index = tml_scene_test;
timeline_running = true;
}
if (!global.scene_mode && global.loaded_file[? SAVE_CHNUM] == 5) {
global.scene_mode = true;
global.scene_number = SCENE_TEST;
timeline_position = 0;
timeline_index = tml_scene_test;
timeline_running = true;
}
if (!global.scene_mode && global.loaded_file[? SAVE_CHNUM] == 6) {
global.scene_mode = true;
global.scene_number = SCENE_TEST;
timeline_position = 0;
timeline_index = tml_scene_test;
timeline_running = true;
}
if (!global.scene_mode && global.loaded_file[? SAVE_CHNUM] == 7) {
global.scene_mode = true;
global.scene_number = SCENE_TEST;
timeline_position = 0;
timeline_index = tml_scene_test;
timeline_running = true;
}

View File

@ -1,5 +1,5 @@
global.scene_mode = false;
global.scene_number = scene_NOSCENE;
global.scene_number = SCENE_NOSCENE;
global.dialogue_mode = false;
timeline_running = false;

View File

@ -13,7 +13,8 @@ function scr_files_init(){
}
//initialize default save data
global.default_save[? SAVE_POINT ] = SAVE_POINT_START;
global.default_save[? SAVE_CHNUM ] = 1;
global.default_save[? SAVE_LINENUM ] = 0;
scr_files_load( SAVE_DEFAULTS );
//initialize save files

View File

@ -1,18 +1,24 @@
//scr_files_load_preview
function scr_files_load_preview() {
global.file_A_preview = "---";
global.file_B_preview = "---";
global.file_C_preview = "---";
global.file_A_preview_line1 = "---";
global.file_A_preview_line2 = "---";
global.file_B_preview_line1 = "---";
global.file_B_preview_line2 = "---";
global.file_C_preview_line1 = "---";
global.file_C_preview_line2 = "---";
if ( scr_files_load( SAVE_FILE_NAME_A ) == FILE_LOAD_SUCCESS ) {
global.file_A_preview = "chapter " + string(global.loaded_file[? SAVE_POINT]);
global.file_A_preview_line1 = "chapter " + string(global.loaded_file[? SAVE_CHNUM]);
global.file_A_preview_line2 = "line " + string(global.loaded_file[? SAVE_LINENUM]);
//TODO: add chapter names
}
if ( scr_files_load( SAVE_FILE_NAME_B ) == FILE_LOAD_SUCCESS ) {
global.file_B_preview = "chapter " + string(global.loaded_file[? SAVE_POINT]);
global.file_B_preview_line1 = "chapter " + string(global.loaded_file[? SAVE_CHNUM]);
global.file_B_preview_line2 = "line " + string(global.loaded_file[? SAVE_LINENUM]);
//TODO: add chapter names
}
if ( scr_files_load( SAVE_FILE_NAME_C ) == FILE_LOAD_SUCCESS ) {
global.file_C_preview = "chapter " + string(global.loaded_file[? SAVE_POINT]);
global.file_C_preview_line1 = "chapter " + string(global.loaded_file[? SAVE_CHNUM]);
global.file_C_preview_line2 = "line " + string(global.loaded_file[? SAVE_LINENUM]);
//TODO: add chapter names
}
scr_files_load( SAVE_DEFAULTS );

View File

@ -173,13 +173,10 @@
#macro SAVE_FILE_NAME_B "save_B.json"
#macro SAVE_FILE_NAME_C "save_c.json"
#macro SAVE_DEFAULTS "defaults.json"
#macro SAVE_AUTOSAVE "autosave.json"
#macro SAVE_POINT "save_point"
#macro SAVE_POINT_START 0
#macro SAVE_POINT_A 1
#macro SAVE_POINT_B 2
#macro SAVE_POINT_C 3
#macro SAVE_POINT_D 4
#macro SAVE_CHNUM "save_chnum"
#macro SAVE_LINENUM "save_linenum"
//dialogue
#macro TEXT_LOADING -1
@ -195,6 +192,9 @@
#macro DISPLAY_ADV 1
#macro DISPLAY_NARRATOR 2
#macro DISPLAY_CG 3
#macro DISPLAY_ADV_SHOUT 4
#macro DISPLAY_WRITER 5
#macro POSITION_LEFT -1
#macro POSITION_LEFTCENTER -0.5
@ -210,10 +210,11 @@
#macro BG_OFFICE_PLAIN 4
#macro BG_OFFICE_DECOR 5
#macro BG_OFFICE_WAITING 6
#macro BG_MEADOW 7
#macro BG_HUMAN_VILLAGE 7
#macro BG_MISTY_LAKE 8
#macro BG_BAMBOO_FOREST 9
#macro BG_MORIYA_SHRINE 10
#macro CG_CIRNO_DAIYOUSEI 11
#macro CG_KAGUYA_MOKOU 12
#macro CG_KANAKO_SUWAKO 13
@ -221,15 +222,36 @@
#macro MUS_TEST -1
#macro MUS_NONE 0
#macro SOUND_TEST -1
#macro SOUND_NONE 0
#macro TALK_TEST -1
#macro TALK_NOSPRITE 0
#macro TALK_KOISHI 1
#macro TALK_SATORI 2
#macro TALK_SAKUYA 3
#macro TALK_CIRNO 4
#macro TALK_DAIYOUSEI 5
#macro TALK_KAGUYA 6
#macro TALK_MOKOU 7
#macro TALK_RIN 8
#macro TALK_UTSUHO 9
#macro TALK_KANOKO 10
#macro TALK_SUWAKO 11
#macro TALK_SANAE 12
//scene
#macro SCENE_TOTAL 0
#macro scene_NOSCENE -1
#macro scene_TEST 0
#macro SCENE_TOTAL 7
#macro SCENE_TEST -1
#macro SCENE_NOSCENE 0
#macro SCENE_C1_SISMAD 1
#macro SCENE_C2_IZAYOI 2
#macro SCENE_C3_LAKEFEY 3
#macro SCENE_C4_HOURAI 4
#macro SCENE_C5_RINPARK 5
#macro SCENE_C6_MORIYA 6
#macro SCENE_C7_SISSORRY 7
#endregion
@ -240,15 +262,19 @@ function scr_initialize() {
scr_input_init();
scr_files_init();
global.scene_mode = false;
global.scene_number = scene_NOSCENE;
global.scene_number = SCENE_NOSCENE;
global.dialogue_mode = false;
global.combat_mode = false;
global.autosave_load = false;
global.savepoint_numbers = 0;
global.savepoint_instances[255] = 0;
global.load_file_name = "defaults.json";
global.file_A_preview = "---";
global.file_B_preview = "---";
global.file_C_preview = "---";
global.file_A_preview_line1 = "---";
global.file_B_preview_line1 = "---";
global.file_C_preview_line1 = "---";
global.file_A_preview_line2 = "---";
global.file_B_preview_line2 = "---";
global.file_C_preview_line2 = "---";
}

View File

@ -73,9 +73,12 @@ function scr_menu_draw( _menu, _t, _pos) {
draw_text( 120, 300, "Back to title");
draw_set_halign( fa_right );
draw_text( 350, 60, global.file_A_preview);
draw_text( 350, 120, global.file_B_preview);
draw_text( 350, 180, global.file_C_preview);
draw_text( 350, 60, global.file_A_preview_line1);
draw_text( 350, 85, global.file_A_preview_line2);
draw_text( 350, 120, global.file_B_preview_line1);
draw_text( 350, 145, global.file_B_preview_line2);
draw_text( 350, 180, global.file_C_preview_line1);
draw_text( 350, 205, global.file_C_preview_line2);
draw_set_font(fn_menu_help);
draw_set_halign(fa_left);
@ -112,9 +115,9 @@ function scr_menu_draw( _menu, _t, _pos) {
draw_text( 120, 300, "Cancel");
draw_set_halign( fa_right );
draw_text( 350, 60, global.file_A_preview);
draw_text( 350, 120, global.file_B_preview);
draw_text( 350, 180, global.file_C_preview);
draw_text( 350, 60, global.file_A_preview_line1);
draw_text( 350, 120, global.file_B_preview_line1);
draw_text( 350, 180, global.file_C_preview_line1);
if (confirm) {
draw_set_color(c_black);

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

View File

@ -0,0 +1,74 @@
{
"resourceType": "GMSprite",
"resourceVersion": "1.0",
"name": "spr_talk_koishi",
"bbox_bottom": 359,
"bbox_left": 8,
"bbox_right": 357,
"bbox_top": 8,
"bboxMode": 0,
"collisionKind": 1,
"collisionTolerance": 0,
"DynamicTexturePage": false,
"edgeFiltering": false,
"For3D": false,
"frames": [
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"e6e385bf-8c5b-40de-86fd-91814c59f4d9",},
],
"gridX": 0,
"gridY": 0,
"height": 360,
"HTile": false,
"layers": [
{"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"ff151efd-f07c-4e00-9830-7a7a8aaf85a3","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,},
],
"nineSlice": null,
"origin": 1,
"parent": {
"name": "portraits",
"path": "folders/portraits.yy",
},
"preMultiplyAlpha": false,
"sequence": {
"resourceType": "GMSequence",
"resourceVersion": "1.4",
"name": "spr_talk_koishi",
"autoRecord": true,
"backdropHeight": 768,
"backdropImageOpacity": 0.5,
"backdropImagePath": "",
"backdropWidth": 1366,
"backdropXOffset": 0.0,
"backdropYOffset": 0.0,
"events": {"resourceType":"KeyframeStore<MessageEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"eventStubScript": null,
"eventToFunction": {},
"length": 1.0,
"lockOrigin": false,
"moments": {"resourceType":"KeyframeStore<MomentsEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"playback": 1,
"playbackSpeed": 30.0,
"playbackSpeedType": 0,
"showBackdrop": true,
"showBackdropImage": false,
"timeUnits": 1,
"tracks": [
{"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"e6e385bf-8c5b-40de-86fd-91814c59f4d9","path":"sprites/spr_talk_koishi/spr_talk_koishi.yy",},},},"Disabled":false,"id":"1ce8de87-b0a5-4d7e-a634-5390338ae572","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,},
],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
],
"visibleRange": null,
"volume": 1.0,
"xorigin": 180,
"yorigin": 0,
},
"swatchColours": null,
"swfPrecision": 2.525,
"textureGroupId": {
"name": "Default",
"path": "texturegroups/Default",
},
"type": 0,
"VTile": false,
"width": 360,
}

View File

@ -41,6 +41,7 @@
{"name":"rm_logo","order":15,"path":"rooms/rm_logo/rm_logo.yy",},
{"name":"fn_menu_large","order":3,"path":"fonts/fn_menu_large/fn_menu_large.yy",},
{"name":"spr_leftarrow","order":5,"path":"sprites/spr_leftarrow/spr_leftarrow.yy",},
{"name":"spr_talk_koishi","order":1,"path":"sprites/spr_talk_koishi/spr_talk_koishi.yy",},
{"name":"fn_logo_large","order":2,"path":"fonts/fn_logo_large/fn_logo_large.yy",},
{"name":"rm_init","order":14,"path":"rooms/rm_init/rm_init.yy",},
{"name":"spr_controller","order":1,"path":"sprites/spr_controller/spr_controller.yy",},

View File

@ -19,7 +19,7 @@
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"scripts","folderPath":"folders/scripts.yy",},
],
"IncludedFiles": [
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"thpj5_intro.txt","CopyToMask":-1,"filePath":"datafiles",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"thpj5_intro.txt","CopyToMask":3035426170322551022,"filePath":"datafiles",},
],
"isEcma": false,
"LibraryEmitters": [],
@ -65,6 +65,7 @@
{"id":{"name":"rm_logo","path":"rooms/rm_logo/rm_logo.yy",},},
{"id":{"name":"fn_menu_large","path":"fonts/fn_menu_large/fn_menu_large.yy",},},
{"id":{"name":"spr_leftarrow","path":"sprites/spr_leftarrow/spr_leftarrow.yy",},},
{"id":{"name":"spr_talk_koishi","path":"sprites/spr_talk_koishi/spr_talk_koishi.yy",},},
{"id":{"name":"fn_logo_large","path":"fonts/fn_logo_large/fn_logo_large.yy",},},
{"id":{"name":"rm_init","path":"rooms/rm_init/rm_init.yy",},},
{"id":{"name":"spr_controller","path":"sprites/spr_controller/spr_controller.yy",},},

View File

@ -1,8 +1,10 @@
global.loaded_file[? SAVE_POINT]++;
scr_files_save( global.load_file_name );
global.loaded_file[? SAVE_CHNUM]++;
global.loaded_file[? SAVE_LINENUM] = 0;
if (global.loaded_file[? SAVE_POINT] > SCENE_TOTAL ) {
if (global.loaded_file[? SAVE_CHNUM] > SCENE_TOTAL ) {
room_goto(rm_ending);
} else {
scr_files_save( SAVE_AUTOSAVE );
global.autosave_load = true;
room_goto(rm_loader);
}