| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- function initialize_save_data()
- {
- global.save_data =
- {
- player:
- {
- maxHP: 5,
- maxINK: 9,
- Credit: 0,
-
- abilities:
- {
- attack: false,
- accesscard : false,
- annotate: false,
- dash: false,
- wall_climb: false,
- double_jump: false
- },
- corpse:
- {
- targetRoom: noone,
- xPos: -1,
- yPos: -1,
- droppedCredit: 0
- },
- },
- world:
- {
- spRoom: "rTest1",
- spxPos: 192,
- spyPos: 864,
- activated_objects: {},
- defeated_boss: {},
- npc_flags: {}
- }
- };
-
- initialize_dialogue();
-
- var _npc_names = struct_get_names(global.dialogue);
- for(var i = 0; i < array_length(_npc_names); i++)
- {
- var _npc = _npc_names[i];
- var _flags = [-1, 0];
- for(var j = 2; j < array_length(_npc); j++)
- _flags[j] = -1;
- global.save_data.world.npc_flags[$ _npc] = _flags;
- }
- }
- function initialize_dialogue()
- {
- global.dialogue =
- {
- warden:
- [
- [//idle
- "Have a nice day!"
- ],
- [//first
- [
- "Good morning. " +
- "I haven't met you before! " +
- "Are you new here?",
- "By the way, my access card is lost, " +
- "so you probably can't leave the dorm right now. " +
- "I'm pretty sorry."
- ],
- [
- "Tell me if you see it anywhere!"
- ]
- ],
- [//accesscard
- [
- "Wow, thanks a lot! " +
- "Here, try this. ",
- "Oh, I can lend a card to you. " +
- "There may be other locked doors like these."
- ],
- [
- "Are you leaving? " +
- "Remember to pay a visit when you have spare time. " +
- "I'm planning to sell some daily necessities."
- ]
- ]
- ]
- };
- }
- function save_game_to_disk()
- {
- var _json_string = json_stringify(global.save_data);
-
- var _buffer = buffer_create(string_byte_length(_json_string) + 1, buffer_fixed, 1);
- buffer_write(_buffer, buffer_string, _json_string);
- buffer_save(_buffer, global.save_filename);
- buffer_delete(_buffer);
-
- if global.developer_mode
- show_debug_message("The game has been saved to " + global.save_filename);
- }
- function load_game_from_disk()
- {
- if !file_exists(global.save_filename)
- return;
-
- var _buffer = buffer_load(global.save_filename);
- var _json_string = buffer_read(_buffer, buffer_string);
- buffer_delete(_buffer);
-
- var _loaded_data = json_parse(_json_string);
-
- global.save_data = _loaded_data;
-
- room_goto(asset_get_index(global.save_data.world.spRoom));
-
- global.in_game_manager = icl(oInGameManager);
- }
- function self_check_activated()
- {
- return struct_exists(global.save_data.world.activated_objects, uuid)
- }
- function autosave()
- {
- var _list = global.save_data.world.activated_objects;
- _list[$ uuid] = true;
- save_game_to_disk();
- }
|