67 Commits
Author SHA1 Message Date
Mercury233 bea3249a31 move FileSystem implementation from header to source (#3143) 2026-07-20 11:11:37 +08:00
NanahiraandMercury233 2321b35cd9 Fix replay response recording for retry handling (#3116)
* add yrp format 2.5 & rollback replay when MSG_RETRY

* simplify

* remove yrp 2.5

* fix to #3116 (#3124)

* format

* implement same logic on SingleMode

---------

Co-authored-by: Mercury233 <me@mercury233.me>
2026-06-24 09:54:17 +08:00
Mercury233 a4c09fb3c4 use liblzma(xz) to replace lzma sdk (#3065) 2026-05-25 08:11:31 +08:00
salix5 76a79a9e74 Fix size check in STOC_REPLAY and replay read, write (#3083) 2026-05-11 23:35:25 +08:00
salix5 df02543f6c Use std::vector in EndDuel for SingleDuel and TagDuel (#3077) 2026-05-06 09:03:47 +08:00
mercury233 638d9425cd use FileSystem::Rename in RenameReplay 2026-05-06 08:55:57 +08:00
salix5 78c1a9b390 Remove unnecessary header files from config.h (#3036) 2026-03-29 22:44:32 +08:00
salix5 192cb6b77c Replay: add SaveDeck (#2986) 2026-03-02 11:33:46 +08:00
salix5 a07898e5c2 Add deck.h & remove default constructor and copy constructor from Deck (#2987) 2026-03-02 11:33:20 +08:00
salix5 c470682b2c Refactor SaveReplay, Check file path (#2917) 2025-09-08 19:53:12 +08:00
salix5 04ac2a12f5 use std::rename in Replay::RenameReplay (#2883) 2025-08-11 09:16:14 +08:00
salix5 fb6814a8f6 Refactor replay code for cross-platform compatibility (#2877) 2025-07-21 13:34:39 +08:00
salix5 bd0547ed50 move MAINC_MAX, SIDEC_MAX to deck_manager.h (#2876) 2025-07-08 23:30:10 +08:00
Nanahira f7a977c72c fix new replay crash (#2846) 2025-06-19 19:24:05 +08:00
salix5 b3482765e4 fix: seeding std::mt19937 with only 1 uint32_t (#2820) 2025-06-18 15:47:55 +08:00
salix5 c41aa28972 left shit on unsigned (#2821) 2025-06-01 20:32:37 +08:00
salix5 5a37286e8a check header in OpenReplay (#2807)
* check header in OpenReplay

* add version_info for old replay

* simplify

* add newline char
2025-05-30 16:05:24 +08:00
salix5 c3e2599358 add MenuHandler::temp_replay (#2802) 2025-05-21 13:57:35 +08:00
salix5 471c2134a3 Read player names, deck & check script path on OpenReplay (#2776) 2025-05-17 08:53:06 +08:00
Mercury233 9350f5d693 add myfopen, fix setlocale (#2713) 2025-04-21 10:08:00 +08:00
Mercury233 ccf3398d15 add FileSystem::RemoveFile (#2760) 2025-04-21 10:06:27 +08:00
Mercury233andsalix5 6bcc96d222 rename myfopen to mywfopen (#2691)
* use fopen in DataManager::ReadScriptFromFile

* rename myfopen to mywfopen

* use std namespace

---------

Co-authored-by: salix5 <salix5566@gmail.com>
2025-02-22 10:54:31 +08:00
salix5 aedaf56fa8 replace fflush 2025-02-22 10:37:38 +08:00
salix5 f5955f854f replace fopen, fclose, fgets 2025-02-22 10:37:38 +08:00
salix5 e542fa5a14 replace fread, fwrite 2025-02-22 10:37:38 +08:00
salix5 cc18709fb0 Replay: add read/write template (#2637)
* Replay: add read/write template

* Replay: remove WriteInt8, WriteInt16

* use int32_t in WriteInt32

* remove ReadInt8, ReadInt16

* use int32_t in ReadInt32

* update ReadData

* add ReadHeader

* use array index
2024-12-27 08:23:02 +08:00
salix5 7721bfe017 remove NULL (#2626) 2024-12-04 23:19:51 +08:00
salix5 48d53cda9f use wchar_t name in myfopen 2024-11-30 13:22:13 +08:00
salix5 b41dba7d5a fix Replay::ReadName 2024-11-30 13:22:13 +08:00
salix5 4ea5df3af2 fix Replay::OpenReplay 2024-11-30 13:22:13 +08:00
salix5 a8ccdbb107 add wrapper function myfopen (#2582)
* add wrapper function myfopen

* open file with myfopen
2024-09-08 21:52:57 +08:00
salix5 88f2f8e1d3 Replay: add bounds checking (#2583)
* update WriteInt*

* read/write with different pointer

* bool ReadData(void* data, int length)

* add ReadValue<T>
2024-09-01 03:24:02 +08:00
salix5 080d7781f0 clean config.h (#2568)
* move header files to game.h

* include mutex when necessary

* include myfilesystem.h when necessary

* include thread when necessary

* include string

* include GL when necessary

* remove #pragma once

* rename guard macro to YGOPRO_CONFIG_H

* fix warning C4456, C4458

* move GL to game.h

* use <cstring> functions

* include <wchar.h>
2024-08-11 05:05:20 +08:00
salix5 0761407162 use std::memcpy in class Replay (#2549)
* use std::memcpy in class Replay

* remove pointer casting
2024-05-21 15:34:10 +08:00
salix5 f29450b9c3 use memcpy in bufferio.h (#2524)
* use memcpy in bufferio.h

* include

* use std::memcpy

* use BufferIO Read/Write

* use fixed width integer

* include <cstdint>
2024-05-12 22:12:06 +08:00
salix5 e3155746c5 fix: check response size before writing (#2514)
* update DuelClient::response_buf[]

* fix: check response size before writing
2024-02-14 04:03:07 +08:00
salix5 b9789c39f5 update Replay::CheckReplay()
From version 0x1353, all replays will use REPLAY_UNIFORM.
2021-09-29 21:43:50 +08:00
salix5 449e2993bd fix Replay::OpenReplay() 2021-08-07 22:40:59 +08:00
salix5 f3c56d33ac add init & bounds checking 2021-08-07 22:37:23 +08:00
DailyShana 949f8d2379 fix client_card_sort
to satisfy strict weak ordering
2020-01-16 19:21:35 +08:00
DailyShana 9238d44ea8 add a file system wrapper
modified from ygopro2 branch
2018-11-04 17:02:04 +08:00
DailyShana 7790133681 tweak 2018-09-14 23:44:22 +08:00
DailyShana 029608bf95 move common used macros in ocgcore to ocgcore/common.h 2018-08-04 13:21:21 +08:00
Mercury233 895e6e7aff add delete and rename replay (#2089) 2018-02-24 23:04:17 +08:00
VanillaSalt f3b42b46e6 add replay function in single mode 2017-11-20 00:50:32 +09:00
mercury233 79d7fd1e16 fix #2033 2017-08-27 21:18:42 +08:00
VanillaSalt 159c60aae7 fix 2017-07-26 20:26:44 +09:00
mercury233 9ca1902225 update command line parameters 2016-12-31 01:38:42 +08:00
salix5 e363219c1c unicode script filename in windows 2016-07-11 22:36:03 +08:00
VanillaSalt 45e4cd588d replay undo (slow) 2016-05-22 08:43:37 +09:00