issac meow

This commit is contained in:
DepressedTWM 2026-06-10 13:10:26 -04:00
parent 9e29de6cae
commit 30b3136398
5 changed files with 44 additions and 91 deletions

View File

@ -124,6 +124,7 @@ set(MAIN_HEADERS
src/i18n.h src/i18n.h
src/meow.h src/meow.h
src/modloader.h src/modloader.h
src/sunshine.h
) )
set(MAIN_SOURCE set(MAIN_SOURCE

View File

@ -9,67 +9,47 @@
# relative to gameFolder and ignoring both RTPs and # relative to gameFolder and ignoring both RTPs and
# encrypted archives. # encrypted archives.
# Debug mode
# Enable reset on F12 press and other # Enable reset on F12 press and other
# (default: disabled) debugMode=false
#
# debugMode=false
# Start game in fullscreen mode, # Start game in fullscreen mode,
# i.e. Big Picture/console mode. fullscreen=false
# (default: disabled)
#
# fullscreen=false
# screenMode
# idk # idk
# (default: disabled) screenMode=false
# screenMode=false
# Display current FPS in Window title # Display current FPS in Window title
# (default: disabled) printFPS=false
# printFPS=false
# Preserve game screen aspect ratio, # Preserve game screen aspect ratio,
# as opposed to stretch-to-fill # as opposed to stretch-to-fill
# (default: enabled) fixedAspectRatio=true
#
# fixedAspectRatio=true
# 16:9 support # 16:9 support
# Force Game work in 16:9. EnableSixteenByNine=false
# (default: disabled)
#
# EnableSixteenByNine=false
# Controlling the resolution of the game window, # Controlling the resolution of the game window,
# it is not recommended to change. # it is not recommended to change.
# If you want to configure 16:9, use EnableSixteenByNine. # If you want to configure 16:9, use EnableSixteenByNine.
# defScreenW=0
# defScreenW=0 defScreenH=0
# defScreenH=0
# Apply linear interpolation when game screen # Apply linear interpolation when game screen
# is upscaled # is upscaled
# (default: disabled) smoothScaling=false
#
# smoothScaling=false
# Sync screen redraws to the monitor refresh rate # Sync screen redraws to the monitor refresh rate
# (default: enabled) # (default: enabled)
# vsync=true
# vsync=true
# Enforce a static frame rate # Enforce a static frame rate
# (0 = disabled) # (0 = disabled)
# fixedFramerate=0
# fixedFramerate=0
# Skip (don't draw) frames when behind # Skip (don't draw) frames when behind
# (default: enabled) # (default: enabled)
# frameSkip=true
# frameSkip=true
# Use a fixed framerate that is approx. equal to the # Use a fixed framerate that is approx. equal to the
# native screen refresh rate. This is different from # native screen refresh rate. This is different from
@ -77,30 +57,23 @@
# reported back to the game, ensuring correct timers. # reported back to the game, ensuring correct timers.
# If the screen refresh rate cannot be determined, # If the screen refresh rate cannot be determined,
# this option is force-disabled # this option is force-disabled
# (default: disabled) syncToRefreshrate=false
#
# syncToRefreshrate=false
# Don't use alpha blending when rendering text # Don't use alpha blending when rendering text
# (default: disabled) # (default: disabled)
# solidFonts=false
# solidFonts=false
# Work around buggy graphics drivers which don't # Work around buggy graphics drivers which don't
# properly synchronize texture access, most # properly synchronize texture access, most
# apparent when text doesn't show up or the map # apparent when text doesn't show up or the map
# tileset doesn't render at all # tileset doesn't render at all
# (default: disabled) subImageFix=false
#
# subImageFix=false
# Enable framebuffer blitting if the driver is # Enable framebuffer blitting if the driver is
# capable of it. Some drivers carry buggy # capable of it. Some drivers carry buggy
# implementations of this functionality, so # implementations of this functionality, so
# disabling it can be used as a workaround # disabling it can be used as a workaround
# (default: enabled) enableBlitting=true
#
# enableBlitting=true
# Limit the maximum size (width, height) of # Limit the maximum size (width, height) of
# most textures mkxp will create (exceptions are # most textures mkxp will create (exceptions are
@ -108,42 +81,28 @@
# If set to 0, the hardware maximum is used. # If set to 0, the hardware maximum is used.
# This is useful for recording traces that can # This is useful for recording traces that can
# be played back on machines with lower specs. # be played back on machines with lower specs.
# (default: 0) maxTextureSize=0
#
# maxTextureSize=0
# Set the base path of the game to '/path/to/game' # Set the base path of the game to '/path/to/game'
# (default: executable directory) gameFolder=/path/to/game
#
# gameFolder=/path/to/game
# Allow symlinks for game assets to be followed # Allow symlinks for game assets to be followed
# (default: disabled) allowSymlinks=false
#
# allowSymlinks=false
# Set the game window icon to 'path/to/icon.png' # Set the game window icon to 'path/to/icon.png'
# (default: none) iconPath=/path/to/icon.png
#
# iconPath=/path/to/icon.png
# Define raw scripts to be executed before the # Define raw scripts to be executed before the
# actual Scripts.rxdata execution starts # actual Scripts.rxdata execution starts
# (default: none)
#
# preloadScript=my_win32_wrapper.rb # preloadScript=my_win32_wrapper.rb
# preloadScript=ruby18_fixes.rb # preloadScript=ruby18_fixes.rb
# Index all accesible assets via their lower case path # Index all accesible assets via their lower case path
# (emulates windows case insensitivity) # (emulates windows case insensitivity)
# (default: enabled) pathCache=true
#
# pathCache=true
# Add 'rtp1', 'rtp2.zip' and 'game.rgssad' to the # Add 'rtp1', 'rtp2.zip' and 'game.rgssad' to the
# asset search path (multiple allowed) # asset search path (multiple allowed)
# (default: none)
#
#RTP=/path/to/rtp1 #RTP=/path/to/rtp1
#RTP=/path/to/rtp2.zip #RTP=/path/to/rtp2.zip
#RTP=/path/to/game.rgssad #RTP=/path/to/game.rgssad
@ -157,39 +116,28 @@
# This is not connected to the built-in font, which is # This is not connected to the built-in font, which is
# always used when a non-existing font family is # always used when a non-existing font family is
# requested by RGSS. # requested by RGSS.
# (default: none)
#
#fontSub=Arial>Open Sans #fontSub=Arial>Open Sans
#fontSub=Times New Roman>Liberation Serif #fontSub=Times New Roman>Liberation Serif
# Because mkxp is usually distributed as a stand alone # Because mkxp is usually distributed as a stand alone
# build, no predefined load paths are initialized # build, no predefined load paths are initialized
# ($:, $LOAD_PATH) in the MRI backend. With this option, # ($:, $LOAD_PATH) in the MRI backend. With this option,
# they can be specified manually (eg. when using a system # they can be specified manually (eg. when using a system
# libruby.so). It is however recommended to statically # libruby.so). It is however recommended to statically
# link all required gems into libruby.so. # link all required gems into libruby.so.
# (default: none)
#
#rubyLoadpath=/usr/lib64/ruby/ #rubyLoadpath=/usr/lib64/ruby/
#rubyLoadpath=/usr/local/share/ruby/site_ruby #rubyLoadpath=/usr/local/share/ruby/site_ruby
# Number of OpenAL sources to allocate for SE playback. # Number of OpenAL sources to allocate for SE playback.
# If there are a lot of sounds playing at the same time # If there are a lot of sounds playing at the same time
# and audibly cutting each other off, try increasing # and audibly cutting each other off, try increasing
# this number. Maximum: 64. # this number. Maximum: 64.
# SE.sourceCount=6
# SE.sourceCount=6
# [Windows only] Alloc console # [Windows only] Alloc console
# Launch a console window with debug information along with the game. # Launch a console window with debug information along with the game.
# (default: false) Windows_AllocConsole=false
#
# Windows_AllocConsole=false
# Mods directory path # Mods directory path
# Path to mods directory # Path to mods directory
# (default: "mods") ModsDirPath="mods"
#
# ModsDirPath="mods"

View File

@ -76,8 +76,8 @@ void Config::read(int argc, char *argv[]){
PO_DESC(fixedAspectRatio, bool, true) \ PO_DESC(fixedAspectRatio, bool, true) \
PO_DESC(smoothScaling, bool, false) \ PO_DESC(smoothScaling, bool, false) \
PO_DESC(vsync, bool, true) \ PO_DESC(vsync, bool, true) \
PO_DESC(defScreenW, int, 0) \ PO_DESC(defScreenW, int, 640) \
PO_DESC(defScreenH, int, 0) \ PO_DESC(defScreenH, int, 480) \
PO_DESC(windowTitle, std::string, "") \ PO_DESC(windowTitle, std::string, "") \
PO_DESC(ModsDirPath, std::string,"mods") \ PO_DESC(ModsDirPath, std::string,"mods") \
PO_DESC(fixedFramerate, int, 0) \ PO_DESC(fixedFramerate, int, 0) \
@ -172,13 +172,10 @@ void Config::read(int argc, char *argv[]){
game.title = "OneShot: Sunshine"; game.title = "OneShot: Sunshine";
game.scripts = "Data/xScripts.rxdata"; game.scripts = "Data/xScripts.rxdata";
if(defScreenW == 0 || defScreenH == 0){ if(defScreenW == 640 || defScreenH == 480){
if (EnableSixteenByNine){ if (EnableSixteenByNine){
defScreenW = 1280; defScreenW = 1280;
defScreenH = 720; defScreenH = 720;
}else{
defScreenW = 640;
defScreenH = 480;
} }
} }

View File

@ -40,6 +40,7 @@
#include <fstream> #include <fstream>
#include <cstdlib> #include <cstdlib>
#include <filesystem> #include <filesystem>
#include <boost/chrono.hpp>
#include "sharedstate.h" #include "sharedstate.h"
#include "eventthread.h" #include "eventthread.h"
@ -50,6 +51,7 @@
#include "i18n.h" #include "i18n.h"
#include "security.h" #include "security.h"
#include "modloader.h" #include "modloader.h"
#include "sunshine.h"
#include "meow.h" #include "meow.h"
@ -214,6 +216,7 @@ static void setGamePathInRegistry() {
} }
int main(int argc, char *argv[]){ int main(int argc, char *argv[]){
SecurityManagerInit(); SecurityManagerInit();
starttime = boost::chrono::high_resolution_clock::now();
loadLanguageMetadata(); //there will be a segfault on fclose if I don't move it here loadLanguageMetadata(); //there will be a segfault on fclose if I don't move it here
SDL_SetHint(SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS, "0"); SDL_SetHint(SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS, "0");

4
src/sunshine.h Normal file
View File

@ -0,0 +1,4 @@
#include <boost/chrono.hpp>
//помойка ебаная
inline boost::chrono::high_resolution_clock::time_point starttime;