mirror of
https://github.com/Kapendev/parin.git
synced 2025-04-25 20:49:57 +03:00
Fixed betterC bug.
This commit is contained in:
parent
407a1e5bc9
commit
3dc646a5ef
1 changed files with 21 additions and 18 deletions
|
@ -875,6 +875,7 @@ struct EngineViewport {
|
|||
struct EngineState {
|
||||
EngineFlags flags;
|
||||
EngineFullscreenState fullscreenState;
|
||||
|
||||
Sz tickCount;
|
||||
Color borderColor;
|
||||
Filter defaultFilter;
|
||||
|
@ -1257,8 +1258,6 @@ void openUrl(IStr url = "https://github.com/Kapendev/parin") {
|
|||
@trusted
|
||||
void openWindow(int width, int height, const(IStr)[] args, IStr title = "Parin") {
|
||||
if (rl.IsWindowReady) return;
|
||||
engineState = cast(EngineState*) jokaMalloc(EngineState.sizeof);
|
||||
jokaMemset(engineState, 0, EngineState.sizeof);
|
||||
// Raylib stuff.
|
||||
rl.SetConfigFlags(rl.FLAG_WINDOW_RESIZABLE | rl.FLAG_VSYNC_HINT);
|
||||
rl.SetTraceLogLevel(rl.LOG_ERROR);
|
||||
|
@ -1266,23 +1265,30 @@ void openWindow(int width, int height, const(IStr)[] args, IStr title = "Parin")
|
|||
rl.InitAudioDevice();
|
||||
rl.SetExitKey(rl.KEY_NULL);
|
||||
rl.SetTargetFPS(60);
|
||||
rl.SetWindowMinSize(240, 135);
|
||||
rl.rlSetBlendFactorsSeparate(0x0302, 0x0303, 1, 0x0303, 0x8006, 0x8006);
|
||||
setWindowMinSize(240, 135);
|
||||
// Engine stuff.
|
||||
foreach (arg; args) engineState.envArgsBuffer.append(arg);
|
||||
engineState = cast(EngineState*) jokaMalloc(EngineState.sizeof);
|
||||
jokaMemset(engineState, 0, EngineState.sizeof);
|
||||
engineState.flags.canUseAssetsPath = true;
|
||||
engineState.borderColor = black;
|
||||
engineState.defaultFilter = Filter.init;
|
||||
engineState.defaultWrap = Wrap.init;
|
||||
engineState.fullscreenState.previousWindowWidth = width;
|
||||
engineState.fullscreenState.previousWindowHeight = height;
|
||||
engineState.borderColor = black;
|
||||
engineState.viewport.color = gray;
|
||||
engineState.viewport.blend = Blend.init;
|
||||
// Ready resources.
|
||||
if (args.length) {
|
||||
foreach (arg; args) engineState.envArgsBuffer.append(arg);
|
||||
engineState.assetsPath.append(pathConcat(args[0].pathDir, "assets"));
|
||||
}
|
||||
engineState.loadTextBuffer.reserve(8192);
|
||||
engineState.saveTextBuffer.reserve(8192);
|
||||
engineState.droppedFilePathsBuffer.reserve(defaultEngineFontsCapacity);
|
||||
engineState.textures.reserve(defaultEngineTexturesCapacity);
|
||||
engineState.sounds.reserve(defaultEngineSoundsCapacity);
|
||||
engineState.fonts.reserve(defaultEngineFontsCapacity);
|
||||
engineState.viewport.color = gray;
|
||||
engineState.loadTextBuffer.reserve(8192);
|
||||
engineState.saveTextBuffer.reserve(8192);
|
||||
if (args.length) engineState.assetsPath.append(pathConcat(args[0].pathDir, "assets"));
|
||||
// Load debug font.
|
||||
auto monogramData = cast(const(ubyte)[]) import("parin_monogram.png");
|
||||
auto monogramImage = rl.LoadImageFromMemory(".png", monogramData.ptr, cast(int) monogramData.length);
|
||||
|
@ -1573,31 +1579,26 @@ Font engineFont() {
|
|||
return engineState.debugFont;
|
||||
}
|
||||
|
||||
/// Returns the default filter mode for textures.
|
||||
/// Returns the default filter mode.
|
||||
Filter defaultFilter() {
|
||||
return engineState.defaultFilter;
|
||||
}
|
||||
|
||||
/// Returns the default wrap mode for textures.
|
||||
/// Returns the default wrap mode.
|
||||
Wrap defaultWrap() {
|
||||
return engineState.defaultWrap;
|
||||
}
|
||||
|
||||
/// Sets the default filter mode for textures to the specified value.
|
||||
/// Sets the default filter mode to the specified value.
|
||||
void setDefaultFilter(Filter value) {
|
||||
engineState.defaultFilter = value;
|
||||
}
|
||||
|
||||
/// Sets the default wrap mode for textures to the specified value.
|
||||
/// Sets the default wrap mode to the specified value.
|
||||
void setDefaultWrap(Wrap value) {
|
||||
engineState.defaultWrap = value;
|
||||
}
|
||||
|
||||
/// Sets the filter mode used by the engine viewport to the specified value.
|
||||
void setEngineViewportFilter(Filter value) {
|
||||
engineState.viewport.setFilter(value);
|
||||
}
|
||||
|
||||
/// Returns the current master volume level.
|
||||
@trusted
|
||||
float masterVolume() {
|
||||
|
@ -2407,7 +2408,9 @@ mixin template runGame(alias readyFunc, alias updateFunc, alias finishFunc, int
|
|||
Sz length = 0;
|
||||
while (argv[i][length] != '\0') length += 1;
|
||||
engineState.envArgsBuffer.append(argv[i][0 .. length]);
|
||||
|
||||
}
|
||||
engineState.assetsPath.append(pathConcat(engineState.envArgsBuffer[0].pathDir, "assets"));
|
||||
readyFunc();
|
||||
updateWindow(&updateFunc);
|
||||
finishFunc();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue