generated from sigonasr2/CPlusPlusProjectTemplate
Update web compile script and clean up Star.cpp includes
Co-authored-by: sigonasr2 <sigonasr2@gmail.com>
This commit is contained in:
parent
58a89798d7
commit
c502c354ed
@ -4,4 +4,4 @@ debug.sh:849488515cab075948653c15eec4177b -
|
||||
lines.sh:3b907786f7fc9204025993016c9080de -
|
||||
release.sh:0ab321c3fa2f1a1b2f03b1aec3bce816 -
|
||||
temp:d41d8cd98f00b204e9800998ecf8427e -
|
||||
web.sh:e317e1d492d00517a0ac0e460239daa0 -
|
||||
web.sh:ce7a991e69dd9745f057d06430e51a9e -
|
||||
|
@ -28,3 +28,18 @@ if [[ "$1" == "headless" || "$2" == "headless" ]]; then
|
||||
else
|
||||
emrun --serve_after_close ${PROJECT_NAME}.html
|
||||
fi
|
||||
|
||||
if [ $? -eq 127 ]
|
||||
then
|
||||
echo "Failed to find Emscripten. Running install script."
|
||||
PWD=$(pwd)
|
||||
cd ..
|
||||
git clone https://github.com/emscripten-core/emsdk.git
|
||||
cd emsdk
|
||||
git pull
|
||||
./emsdk install latest
|
||||
./emsdk activate latest
|
||||
source ./emsdk_env.sh
|
||||
cd $PWD
|
||||
echo "Emscripten has been installed. Try running the command again."
|
||||
fi
|
BIN
C++ProjectTemplate.data
Normal file
BIN
C++ProjectTemplate.data
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.6 KiB |
File diff suppressed because one or more lines are too long
Binary file not shown.
3
Star.cpp
3
Star.cpp
@ -1,5 +1,4 @@
|
||||
#include "pixelGameEngine.h"
|
||||
#include "Meteos.h"
|
||||
#include "gameDefines.h"
|
||||
|
||||
extern Meteos*game;
|
||||
|
||||
|
@ -1,4 +1,7 @@
|
||||
#ifndef GAME_DEFINES
|
||||
#define GAME_DEFINES
|
||||
#include "pixelGameEngine.h"
|
||||
#include "Meteos.h"
|
||||
#include "BlockClump.h"
|
||||
#include "Block.h"
|
||||
#endif
|
@ -1,3 +1,3 @@
|
||||
#define OLC_PGE_HEADLESS
|
||||
//#define OLC_PGE_HEADLESS
|
||||
#define OLC_PGE_APPLICATION
|
||||
#include "pixelGameEngine.h"
|
@ -3,7 +3,7 @@
|
||||
olcPixelGameEngine.h
|
||||
|
||||
+-------------------------------------------------------------+
|
||||
| OneLoneCoder Pixel Game Engine v2.21 |
|
||||
| OneLoneCoder Pixel Game Engine v2.23 |
|
||||
| "What do you need? Pixels... Lots of Pixels..." - javidx9 |
|
||||
+-------------------------------------------------------------+
|
||||
|
||||
@ -197,7 +197,7 @@
|
||||
|
||||
Author
|
||||
~~~~~~
|
||||
David Barr, aka javidx9, OneLoneCoder 2018, 2019, 2020, 2021, 2022
|
||||
David Barr, aka javidx9, (c) OneLoneCoder 2018, 2019, 2020, 2021, 2022
|
||||
*/
|
||||
#pragma endregion
|
||||
|
||||
@ -316,6 +316,11 @@
|
||||
+FillTexturedPolygon() - Hijacks DecalStructure for configuration
|
||||
+olc::vf2d arguments for Sprite::Sample() functions
|
||||
|
||||
SIG Updates:
|
||||
The following additions are included in Sig's version of the PGE header (this is a sig version)
|
||||
+GetAnyKey() - Returns when a key is activated
|
||||
+GetAnyKeyPress() - Returns when a key is pressed down (and if a keyboard key, which key it was)
|
||||
|
||||
!! Apple Platforms will not see these updates immediately - Sorry, I dont have a mac to test... !!
|
||||
!! Volunteers willing to help appreciated, though PRs are manually integrated with credit !!
|
||||
*/
|
||||
@ -394,7 +399,7 @@ int main()
|
||||
#include <cstring>
|
||||
#pragma endregion
|
||||
|
||||
#define PGE_VER 221
|
||||
#define PGE_VER 223
|
||||
|
||||
// O------------------------------------------------------------------------------O
|
||||
// | COMPILER CONFIGURATION ODDITIES |
|
||||
@ -682,7 +687,7 @@ namespace olc
|
||||
v2d_generic min(const v2d_generic& v) const { return v2d_generic(std::min(x, v.x), std::min(y, v.y)); }
|
||||
v2d_generic cart() { return { std::cos(y) * x, std::sin(y) * x }; }
|
||||
v2d_generic polar() { return { mag(), std::atan2(y, x) }; }
|
||||
v2d_generic clamp(const v2d_generic& v1, const v2d_generic& v2) const { return this->max(v1)->min(v2); }
|
||||
v2d_generic clamp(const v2d_generic& v1, const v2d_generic& v2) const { return this->max(v1).min(v2); }
|
||||
v2d_generic lerp(const v2d_generic& v1, const double t) { return this->operator*(T(1.0 - t)) + (v1 * T(t)); }
|
||||
T dot(const v2d_generic& rhs) const { return this->x * rhs.x + this->y * rhs.y; }
|
||||
T cross(const v2d_generic& rhs) const { return this->x * rhs.y - this->y * rhs.x; }
|
||||
@ -971,6 +976,8 @@ namespace olc
|
||||
virtual bool OnUserUpdate(float fElapsedTime);
|
||||
// Called once on application termination, so you can be one clean coder
|
||||
virtual bool OnUserDestroy();
|
||||
virtual void GetAnyKey();
|
||||
virtual void GetAnyKeyPress(olc::Key pressedKey);
|
||||
|
||||
// Called when a text entry is confirmed with "enter" key
|
||||
virtual void OnTextEntryComplete(const std::string& sText);
|
||||
@ -1357,8 +1364,9 @@ namespace olc
|
||||
#endif
|
||||
|
||||
#if defined(OLC_PLATFORM_X11)
|
||||
namespace X11
|
||||
{#include <GL/glx.h>}
|
||||
namespace X11 {
|
||||
#include <GL/glx.h>
|
||||
}
|
||||
#define CALLSTYLE
|
||||
#endif
|
||||
|
||||
@ -3674,6 +3682,9 @@ namespace olc
|
||||
bool PixelGameEngine::OnUserDestroy()
|
||||
{ return true; }
|
||||
|
||||
void PixelGameEngine::GetAnyKey(){};
|
||||
void PixelGameEngine::GetAnyKeyPress(olc::Key pressedKey){};
|
||||
|
||||
void PixelGameEngine::OnTextEntryComplete(const std::string& sText) { UNUSED(sText); }
|
||||
bool PixelGameEngine::OnConsoleCommand(const std::string& sCommand) { UNUSED(sCommand); return false; }
|
||||
|
||||
@ -3831,8 +3842,10 @@ namespace olc
|
||||
platform->HandleSystemEvent();
|
||||
|
||||
// Compare hardware input states from previous frame
|
||||
auto ScanHardware = [&](HWButton* pKeys, bool* pStateOld, bool* pStateNew, uint32_t nKeyCount)
|
||||
auto ScanHardware = [&](HWButton* pKeys, bool* pStateOld, bool* pStateNew, uint32_t nKeyCount,bool keyboard=true)
|
||||
{
|
||||
bool pressed=false;
|
||||
int key;
|
||||
for (uint32_t i = 0; i < nKeyCount; i++)
|
||||
{
|
||||
pKeys[i].bPressed = false;
|
||||
@ -3841,6 +3854,8 @@ namespace olc
|
||||
{
|
||||
if (pStateNew[i])
|
||||
{
|
||||
pressed=true;
|
||||
key=i;
|
||||
pKeys[i].bPressed = !pKeys[i].bHeld;
|
||||
pKeys[i].bHeld = true;
|
||||
}
|
||||
@ -3849,13 +3864,18 @@ namespace olc
|
||||
pKeys[i].bReleased = true;
|
||||
pKeys[i].bHeld = false;
|
||||
}
|
||||
GetAnyKey();
|
||||
}
|
||||
pStateOld[i] = pStateNew[i];
|
||||
}
|
||||
if (pressed) {
|
||||
if (keyboard) {GetAnyKeyPress((olc::Key)key);}
|
||||
else {GetAnyKeyPress(olc::Key::NONE);}
|
||||
}
|
||||
};
|
||||
|
||||
ScanHardware(pKeyboardState, pKeyOldState, pKeyNewState, 256);
|
||||
ScanHardware(pMouseState, pMouseOldState, pMouseNewState, nMouseButtons);
|
||||
ScanHardware(pMouseState, pMouseOldState, pMouseNewState, nMouseButtons, false);
|
||||
|
||||
// Cache mouse coordinates so they remain consistent during frame
|
||||
vMousePos = vMousePosCache;
|
||||
@ -4594,17 +4614,17 @@ namespace olc
|
||||
// #include <OpenGL/glu.h>
|
||||
//#endif
|
||||
|
||||
//#if defined(OLC_PLATFORM_EMSCRIPTEN)
|
||||
// #include <EGL/egl.h>
|
||||
// #include <GLES2/gl2.h>
|
||||
// #define GL_GLEXT_PROTOTYPES
|
||||
// #include <GLES2/gl2ext.h>
|
||||
// #include <emscripten/emscripten.h>
|
||||
// #define CALLSTYLE
|
||||
// typedef EGLBoolean(locSwapInterval_t)(EGLDisplay display, EGLint interval);
|
||||
// #define GL_CLAMP GL_CLAMP_TO_EDGE
|
||||
// #define OGL_LOAD(t, n) n;
|
||||
//#endif
|
||||
#if defined(OLC_PLATFORM_EMSCRIPTEN)
|
||||
#include <EGL/egl.h>
|
||||
#include <GLES2/gl2.h>
|
||||
#define GL_GLEXT_PROTOTYPES
|
||||
#include <GLES2/gl2ext.h>
|
||||
#include <emscripten/emscripten.h>
|
||||
#define CALLSTYLE
|
||||
typedef EGLBoolean(locSwapInterval_t)(EGLDisplay display, EGLint interval);
|
||||
#define GL_CLAMP GL_CLAMP_TO_EDGE
|
||||
#define OGL_LOAD(t, n) n;
|
||||
#endif
|
||||
|
||||
namespace olc
|
||||
{
|
||||
@ -5574,7 +5594,7 @@ namespace olc
|
||||
vFiles.push_back(std::string(buffer));
|
||||
delete[] buffer;
|
||||
#else
|
||||
vFiles.push_back(std::string(dbuffer));
|
||||
vFiles.push_back(std::string(dfbuffer));
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -6318,8 +6338,8 @@ namespace olc
|
||||
let isFullscreen = (document.fullscreenElement != null);
|
||||
|
||||
// get the width of the containing element
|
||||
let width = (isFullscreen || !Module.olc_AssumeDefaultShells) ? window.innerWidth : Module.canvas.parentNode.clientWidth;
|
||||
let height = (isFullscreen || !Module.olc_AssumeDefaultShells) ? window.innerHeight : Module.canvas.parentNode.clientHeight;
|
||||
let width = (isFullscreen) ? window.innerWidth : Module.canvas.parentNode.clientWidth;
|
||||
let height = (isFullscreen) ? window.innerHeight : Module.canvas.parentNode.clientHeight;
|
||||
|
||||
// calculate the expected viewport size
|
||||
let viewWidth = width;
|
||||
|
BIN
pixelGameEngine_wasm.o
Normal file
BIN
pixelGameEngine_wasm.o
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user