AGS: Refactor CG loading functions to take std::vector<uint8_t>&

This commit is contained in:
kichikuou
2025-06-06 07:32:56 +09:00
parent 734a77c1f0
commit 073da3464b
7 changed files with 22 additions and 22 deletions
+5 -5
View File
@@ -52,12 +52,12 @@ private:
SDL_Cursor* hCursor[10];
// AGS
void load_gm3(uint8* data, int transparent); // Intruder -桜屋敷の探索-
void load_vsp2l(uint8* data, int transparent); // Little Vampire
void load_gl3(uint8* data, bool set_palette, int transparent);
void load_pms(uint8* data, bool set_palette, int transparent);
void load_gm3(const std::vector<uint8_t>& data, int transparent); // Intruder -桜屋敷の探索-
void load_vsp2l(const std::vector<uint8_t>& data, int transparent); // Little Vampire
void load_gl3(const std::vector<uint8_t>& data, bool set_palette, int transparent);
void load_pms(const std::vector<uint8_t>& data, bool set_palette, int transparent);
void load_bmp(const char* file_name); // あゆみちゃん物語 フルカラー実写版
void load_vsp(uint8* data, bool set_palette, int transparent);
void load_vsp(const std::vector<uint8_t>& data, bool set_palette, int transparent);
void draw_char(int dest, int dest_x, int dest_y, uint16 code, TTF_Font* font, uint8 color);
void draw_char_antialias(int dest, int dest_x, int dest_y, uint16 code, TTF_Font* font, uint8 color, uint8 cache[]);
+12 -12
View File
@@ -33,35 +33,35 @@ void AGS::load_cg(int page, int transparent)
switch (game_id.game) {
case GameId::BUNKASAI:
case GameId::GAKUEN:
load_vsp(data.data(), set_palette, transparent);
load_vsp(data, set_palette, transparent);
break;
case GameId::INTRUDER:
// load_gm3(data.data(), transparent);
load_vsp(data.data(), set_palette, transparent); // 暫定
// load_gm3(data, transparent);
load_vsp(data, set_palette, transparent); // 暫定
break;
case GameId::LITTLE_VAMPIRE:
load_vsp2l(data.data(), transparent);
load_vsp2l(data, transparent);
break;
default:
load_gl3(data.data(), set_palette, transparent);
load_gl3(data, set_palette, transparent);
break;
}
break;
case 2:
if (game_id.is(GameId::AYUMI_PROTO)) {
// あゆみちゃん物語 PROTO
load_gl3(data.data(), set_palette, transparent);
load_gl3(data, set_palette, transparent);
} else if (game_id.is(GameId::AYUMI_FD) || game_id.is(GameId::AYUMI_HINT)) {
// あゆみちゃん物語
load_vsp(data.data(), set_palette, transparent);
load_vsp(data, set_palette, transparent);
} else if (game_id.is_sdps()) {
// Super D.P.S
load_pms(data.data(), set_palette, transparent);
load_pms(data, set_palette, transparent);
} else {
if(data[0x8] == 0) {
load_vsp(data.data(), set_palette, transparent);
load_vsp(data, set_palette, transparent);
} else {
load_pms(data.data(), set_palette, transparent);
load_pms(data, set_palette, transparent);
}
}
break;
@@ -69,10 +69,10 @@ void AGS::load_cg(int page, int transparent)
if(data[0x8] == 0) {
if (game_id.is(GameId::FUNNYBEE_FD) || game_id.is(GameId::FUNNYBEE_CD))
set_palette = !ignore_palette.count(page);
load_vsp(data.data(), set_palette, transparent);
load_vsp(data, set_palette, transparent);
} else {
set_palette = set_palette || game_id.is(GameId::FUNNYBEE_CD);
load_pms(data.data(), set_palette, transparent);
load_pms(data, set_palette, transparent);
}
break;
}
+1 -1
View File
@@ -7,7 +7,7 @@
#include "ags.h"
#include <string.h>
void AGS::load_gl3(uint8* data, bool set_palette, int transparent)
void AGS::load_gl3(const std::vector<uint8_t>& data, bool set_palette, int transparent)
{
// ヘッダ取得
uint16 tmp = (data[0x30] | (data[0x31] << 8)) - 0x8000;
+1 -1
View File
@@ -7,7 +7,7 @@
#include "ags.h"
#include <string.h>
void AGS::load_gm3(uint8* data, int transparent)
void AGS::load_gm3(const std::vector<uint8_t>& data, int transparent)
{
// ヘッダ取得
uint16 tmp = (data[0x30] | (data[0x31] << 8)) - 0x8000;
+1 -1
View File
@@ -8,7 +8,7 @@
#include "game_id.h"
#include <string.h>
void AGS::load_pms(uint8* data, bool set_palette, int transparent)
void AGS::load_pms(const std::vector<uint8_t>& data, bool set_palette, int transparent)
{
// ヘッダ取得
int sx = data[0x0] | (data[0x1] << 8);
+1 -1
View File
@@ -8,7 +8,7 @@
#include "game_id.h"
#include <string.h>
void AGS::load_vsp(uint8* data, bool set_palette, int transparent)
void AGS::load_vsp(const std::vector<uint8_t>& data, bool set_palette, int transparent)
{
// ヘッダ取得
int sx = data[0] | (data[1] << 8);
+1 -1
View File
@@ -7,7 +7,7 @@
#include "ags.h"
#include <string.h>
void AGS::load_vsp2l(uint8* data, int transparent)
void AGS::load_vsp2l(const std::vector<uint8_t>& data, int transparent)
{
// ヘッダ取得
int sx = data[0] | (data[1] << 8);