@inglorious/create-game 1.0.8 → 1.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +59 -59
- package/package.json +3 -3
- package/templates/ijs/.prettierrc.yml +6 -6
- package/templates/ijs/README.md +53 -53
- package/templates/ijs/index.html +15 -15
- package/templates/ijs/package.json +2 -2
- package/templates/ijs/public/style.css +35 -35
- package/templates/its/.prettierrc.yml +6 -6
- package/templates/its/README.md +64 -64
- package/templates/its/index.html +15 -15
- package/templates/its/package.json +2 -2
- package/templates/its/public/style.css +35 -35
- package/templates/js/.prettierrc.yml +1 -1
- package/templates/js/README.md +29 -29
- package/templates/js/index.html +15 -15
- package/templates/js/package.json +2 -2
- package/templates/js/public/style.css +35 -35
- package/templates/minimal/README.md +10 -10
- package/templates/minimal/index.html +36 -36
- package/templates/minimal/public/style.css +32 -32
- package/templates/ts/.prettierrc.yml +1 -1
- package/templates/ts/README.md +30 -30
- package/templates/ts/index.html +15 -15
- package/templates/ts/package.json +2 -2
- package/templates/ts/public/style.css +35 -35
package/README.md
CHANGED
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
# @inglorious/create-game
|
|
2
|
-
|
|
3
|
-
[](https://opensource.org/licenses/MIT)
|
|
4
|
-
|
|
5
|
-
The official scaffolding tool to quickly create a new game with the [Inglorious Engine](https://www.npmjs.com/package/@inglorious/engine).
|
|
6
|
-
|
|
7
|
-
This package allows you to generate a new project from a set of pre-configured templates, so you can start developing your game right away.
|
|
8
|
-
|
|
9
|
-
## Usage
|
|
10
|
-
|
|
11
|
-
To create a new game, run one of the following commands in your terminal. You will be prompted to choose a project name and select a template.
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
# with npm
|
|
15
|
-
npm create @inglorious/game@latest
|
|
16
|
-
|
|
17
|
-
# with yarn
|
|
18
|
-
yarn create @inglorious/game
|
|
19
|
-
|
|
20
|
-
# with pnpm
|
|
21
|
-
pnpm create @inglorious/game
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
The CLI will guide you through the setup process, asking for a project name and which template you'd like to use.
|
|
25
|
-
|
|
26
|
-
## Templates
|
|
27
|
-
|
|
28
|
-
The following templates are available to get you started:
|
|
29
|
-
|
|
30
|
-
- **minimal**: A minimal starter template that requires no bundling: just HTML, CSS, and JS.
|
|
31
|
-
- **js**: A starter template for a plain JavaScript project, bundled with Vite.
|
|
32
|
-
- **ts**: A starter template for a plain TypeScript project, bundled with Vite.
|
|
33
|
-
- **ijs** (IngloriousScript): A starter template for a JavaScript project using IngloriousScript, bundled with Vite.
|
|
34
|
-
- **its** (IngloriousScript w/ TypeScript): A starter template for a TypeScript project that uses IngloriousScript, bundled with Vite.
|
|
35
|
-
|
|
36
|
-
## What it does
|
|
37
|
-
|
|
38
|
-
The tool will create a new directory with your chosen project name and copy the template files into it. It will also automatically update the `package.json` with your project's name.
|
|
39
|
-
|
|
40
|
-
After the project is created, you can navigate into the directory and install the dependencies.
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
# 1. Change into your new project directory
|
|
44
|
-
cd my-awesome-game
|
|
45
|
-
|
|
46
|
-
# 2. Install dependencies
|
|
47
|
-
pnpm install
|
|
48
|
-
|
|
49
|
-
# 3. Start the development server
|
|
50
|
-
pnpm dev
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## License
|
|
54
|
-
|
|
55
|
-
**MIT License - Free and open source**
|
|
56
|
-
|
|
57
|
-
Created by [Matteo Antony Mistretta](https://github.com/IngloriousCoderz)
|
|
58
|
-
|
|
59
|
-
You're free to use, modify, and distribute this software. See [LICENSE](./LICENSE) for details.
|
|
1
|
+
# @inglorious/create-game
|
|
2
|
+
|
|
3
|
+
[](https://opensource.org/licenses/MIT)
|
|
4
|
+
|
|
5
|
+
The official scaffolding tool to quickly create a new game with the [Inglorious Engine](https://www.npmjs.com/package/@inglorious/engine).
|
|
6
|
+
|
|
7
|
+
This package allows you to generate a new project from a set of pre-configured templates, so you can start developing your game right away.
|
|
8
|
+
|
|
9
|
+
## Usage
|
|
10
|
+
|
|
11
|
+
To create a new game, run one of the following commands in your terminal. You will be prompted to choose a project name and select a template.
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
# with npm
|
|
15
|
+
npm create @inglorious/game@latest
|
|
16
|
+
|
|
17
|
+
# with yarn
|
|
18
|
+
yarn create @inglorious/game
|
|
19
|
+
|
|
20
|
+
# with pnpm
|
|
21
|
+
pnpm create @inglorious/game
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
The CLI will guide you through the setup process, asking for a project name and which template you'd like to use.
|
|
25
|
+
|
|
26
|
+
## Templates
|
|
27
|
+
|
|
28
|
+
The following templates are available to get you started:
|
|
29
|
+
|
|
30
|
+
- **minimal**: A minimal starter template that requires no bundling: just HTML, CSS, and JS.
|
|
31
|
+
- **js**: A starter template for a plain JavaScript project, bundled with Vite.
|
|
32
|
+
- **ts**: A starter template for a plain TypeScript project, bundled with Vite.
|
|
33
|
+
- **ijs** (IngloriousScript): A starter template for a JavaScript project using IngloriousScript, bundled with Vite.
|
|
34
|
+
- **its** (IngloriousScript w/ TypeScript): A starter template for a TypeScript project that uses IngloriousScript, bundled with Vite.
|
|
35
|
+
|
|
36
|
+
## What it does
|
|
37
|
+
|
|
38
|
+
The tool will create a new directory with your chosen project name and copy the template files into it. It will also automatically update the `package.json` with your project's name.
|
|
39
|
+
|
|
40
|
+
After the project is created, you can navigate into the directory and install the dependencies.
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
# 1. Change into your new project directory
|
|
44
|
+
cd my-awesome-game
|
|
45
|
+
|
|
46
|
+
# 2. Install dependencies
|
|
47
|
+
pnpm install
|
|
48
|
+
|
|
49
|
+
# 3. Start the development server
|
|
50
|
+
pnpm dev
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## License
|
|
54
|
+
|
|
55
|
+
**MIT License - Free and open source**
|
|
56
|
+
|
|
57
|
+
Created by [Matteo Antony Mistretta](https://github.com/IngloriousCoderz)
|
|
58
|
+
|
|
59
|
+
You're free to use, modify, and distribute this software. See [LICENSE](./LICENSE) for details.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@inglorious/create-game",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.9",
|
|
4
4
|
"description": "A scaffolding tool to quickly create a new game with the Inglorious Engine.",
|
|
5
5
|
"author": "IceOnFire <antony.mistretta@gmail.com> (https://ingloriouscoderz.it)",
|
|
6
6
|
"license": "MIT",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"@inglorious/eslint-config": "1.1.1"
|
|
44
44
|
},
|
|
45
45
|
"scripts": {
|
|
46
|
-
"format": "prettier --write
|
|
47
|
-
"lint": "eslint .
|
|
46
|
+
"format": "prettier --write .",
|
|
47
|
+
"lint": "eslint ."
|
|
48
48
|
}
|
|
49
49
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
semi: false
|
|
2
|
-
|
|
3
|
-
overrides:
|
|
4
|
-
- files: "*.ijs"
|
|
5
|
-
options:
|
|
6
|
-
parser: babel
|
|
1
|
+
semi: false
|
|
2
|
+
|
|
3
|
+
overrides:
|
|
4
|
+
- files: "*.ijs"
|
|
5
|
+
options:
|
|
6
|
+
parser: babel
|
package/templates/ijs/README.md
CHANGED
|
@@ -1,53 +1,53 @@
|
|
|
1
|
-
# my-game
|
|
2
|
-
|
|
3
|
-
This project is a starter template for creating a game with the Inglorious Engine using **IngloriousScript**.
|
|
4
|
-
|
|
5
|
-
## What is IngloriousScript?
|
|
6
|
-
|
|
7
|
-
IngloriousScript is a superset of JavaScript that enables intuitive vector math using standard operators, transformed by Babel.
|
|
8
|
-
|
|
9
|
-
```javascript
|
|
10
|
-
// Instead of this:
|
|
11
|
-
const newPosition = mod(add(position, scale(velocity, dt)), worldSize)
|
|
12
|
-
|
|
13
|
-
// You can write this:
|
|
14
|
-
const newPosition = (position + velocity * dt) % worldSize
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
## Getting Started
|
|
18
|
-
|
|
19
|
-
This project was scaffolded with `@inglorious/create-game`.
|
|
20
|
-
|
|
21
|
-
To get started, follow these steps:
|
|
22
|
-
|
|
23
|
-
1. **Install dependencies**:
|
|
24
|
-
Navigate to your project directory and install the required packages.
|
|
25
|
-
```sh
|
|
26
|
-
pnpm install
|
|
27
|
-
```
|
|
28
|
-
2. **Start the development server**:
|
|
29
|
-
Run the following command to start the Vite development server.
|
|
30
|
-
```sh
|
|
31
|
-
pnpm dev
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
This will start a Vite development server. Open your browser to the local URL provided to see it in action.
|
|
35
|
-
|
|
36
|
-
## Project Setup
|
|
37
|
-
|
|
38
|
-
- `index.html`: The main entry point for your game.
|
|
39
|
-
- `src/`: Contains your game's source code. Files ending in `.ijs` use IngloriousScript.
|
|
40
|
-
- `vite.config.js`: Vite configuration with the Babel plugin for IngloriousScript.
|
|
41
|
-
- `package.json`: Project metadata and dependencies.
|
|
42
|
-
|
|
43
|
-
## Editor Configuration (VS Code)
|
|
44
|
-
|
|
45
|
-
This template includes a `.vscode/settings.json` file that tells Visual Studio Code to treat `.ijs` files as JavaScript, enabling full syntax highlighting and IntelliSense.
|
|
46
|
-
|
|
47
|
-
```json
|
|
48
|
-
{
|
|
49
|
-
"files.associations": {
|
|
50
|
-
"*.ijs": "javascript"
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
```
|
|
1
|
+
# my-game
|
|
2
|
+
|
|
3
|
+
This project is a starter template for creating a game with the Inglorious Engine using **IngloriousScript**.
|
|
4
|
+
|
|
5
|
+
## What is IngloriousScript?
|
|
6
|
+
|
|
7
|
+
IngloriousScript is a superset of JavaScript that enables intuitive vector math using standard operators, transformed by Babel.
|
|
8
|
+
|
|
9
|
+
```javascript
|
|
10
|
+
// Instead of this:
|
|
11
|
+
const newPosition = mod(add(position, scale(velocity, dt)), worldSize)
|
|
12
|
+
|
|
13
|
+
// You can write this:
|
|
14
|
+
const newPosition = (position + velocity * dt) % worldSize
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Getting Started
|
|
18
|
+
|
|
19
|
+
This project was scaffolded with `@inglorious/create-game`.
|
|
20
|
+
|
|
21
|
+
To get started, follow these steps:
|
|
22
|
+
|
|
23
|
+
1. **Install dependencies**:
|
|
24
|
+
Navigate to your project directory and install the required packages.
|
|
25
|
+
```sh
|
|
26
|
+
pnpm install
|
|
27
|
+
```
|
|
28
|
+
2. **Start the development server**:
|
|
29
|
+
Run the following command to start the Vite development server.
|
|
30
|
+
```sh
|
|
31
|
+
pnpm dev
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
This will start a Vite development server. Open your browser to the local URL provided to see it in action.
|
|
35
|
+
|
|
36
|
+
## Project Setup
|
|
37
|
+
|
|
38
|
+
- `index.html`: The main entry point for your game.
|
|
39
|
+
- `src/`: Contains your game's source code. Files ending in `.ijs` use IngloriousScript.
|
|
40
|
+
- `vite.config.js`: Vite configuration with the Babel plugin for IngloriousScript.
|
|
41
|
+
- `package.json`: Project metadata and dependencies.
|
|
42
|
+
|
|
43
|
+
## Editor Configuration (VS Code)
|
|
44
|
+
|
|
45
|
+
This template includes a `.vscode/settings.json` file that tells Visual Studio Code to treat `.ijs` files as JavaScript, enabling full syntax highlighting and IntelliSense.
|
|
46
|
+
|
|
47
|
+
```json
|
|
48
|
+
{
|
|
49
|
+
"files.associations": {
|
|
50
|
+
"*.ijs": "javascript"
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
```
|
package/templates/ijs/index.html
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8" />
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
-
<link rel="icon" type="image/svg+xml" href="/logo.png" />
|
|
7
|
-
<link rel="stylesheet" href="/style.css" />
|
|
8
|
-
<title>Inglorious Game</title>
|
|
9
|
-
</head>
|
|
10
|
-
|
|
11
|
-
<body>
|
|
12
|
-
<canvas id="canvas" width="800" height="600"></canvas>
|
|
13
|
-
<script type="module" src="./src/main.js"></script>
|
|
14
|
-
</body>
|
|
15
|
-
</html>
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<link rel="icon" type="image/svg+xml" href="/logo.png" />
|
|
7
|
+
<link rel="stylesheet" href="/style.css" />
|
|
8
|
+
<title>Inglorious Game</title>
|
|
9
|
+
</head>
|
|
10
|
+
|
|
11
|
+
<body>
|
|
12
|
+
<canvas id="canvas" width="800" height="600"></canvas>
|
|
13
|
+
<script type="module" src="./src/main.js"></script>
|
|
14
|
+
</body>
|
|
15
|
+
</html>
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
"author": "",
|
|
8
8
|
"license": "MIT",
|
|
9
9
|
"scripts": {
|
|
10
|
-
"format": "prettier --write
|
|
11
|
-
"lint": "eslint .
|
|
10
|
+
"format": "prettier --write .",
|
|
11
|
+
"lint": "eslint .",
|
|
12
12
|
"dev": "vite",
|
|
13
13
|
"build": "vite build",
|
|
14
14
|
"preview": "vite preview"
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
* {
|
|
2
|
-
box-sizing: border-box;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
body {
|
|
6
|
-
font-family: "Press Start 2P", system-ui;
|
|
7
|
-
width: 100vw;
|
|
8
|
-
height: 100vh;
|
|
9
|
-
margin: 0;
|
|
10
|
-
display: flex;
|
|
11
|
-
flex-direction: column;
|
|
12
|
-
justify-content: center;
|
|
13
|
-
align-items: center;
|
|
14
|
-
background-color: #000;
|
|
15
|
-
color: #fff;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
canvas {
|
|
19
|
-
max-width: 1280px;
|
|
20
|
-
max-height: 720px;
|
|
21
|
-
width: 100vw;
|
|
22
|
-
height: auto;
|
|
23
|
-
cursor: none;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
@media (orientation: landscape) and (pointer: coarse) {
|
|
27
|
-
canvas {
|
|
28
|
-
width: auto;
|
|
29
|
-
height: 100vh;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
img {
|
|
34
|
-
display: none;
|
|
35
|
-
}
|
|
1
|
+
* {
|
|
2
|
+
box-sizing: border-box;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
body {
|
|
6
|
+
font-family: "Press Start 2P", system-ui;
|
|
7
|
+
width: 100vw;
|
|
8
|
+
height: 100vh;
|
|
9
|
+
margin: 0;
|
|
10
|
+
display: flex;
|
|
11
|
+
flex-direction: column;
|
|
12
|
+
justify-content: center;
|
|
13
|
+
align-items: center;
|
|
14
|
+
background-color: #000;
|
|
15
|
+
color: #fff;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
canvas {
|
|
19
|
+
max-width: 1280px;
|
|
20
|
+
max-height: 720px;
|
|
21
|
+
width: 100vw;
|
|
22
|
+
height: auto;
|
|
23
|
+
cursor: none;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@media (orientation: landscape) and (pointer: coarse) {
|
|
27
|
+
canvas {
|
|
28
|
+
width: auto;
|
|
29
|
+
height: 100vh;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
img {
|
|
34
|
+
display: none;
|
|
35
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
semi: false
|
|
2
|
-
|
|
3
|
-
overrides:
|
|
4
|
-
- files: "*.its"
|
|
5
|
-
options:
|
|
6
|
-
parser: typescript
|
|
1
|
+
semi: false
|
|
2
|
+
|
|
3
|
+
overrides:
|
|
4
|
+
- files: "*.its"
|
|
5
|
+
options:
|
|
6
|
+
parser: typescript
|
package/templates/its/README.md
CHANGED
|
@@ -1,64 +1,64 @@
|
|
|
1
|
-
# my-game
|
|
2
|
-
|
|
3
|
-
This project is a starter template for creating a game with the Inglorious Engine using **IngloriousScript with TypeScript**.
|
|
4
|
-
|
|
5
|
-
## What is IngloriousScript?
|
|
6
|
-
|
|
7
|
-
IngloriousScript is a superset of JavaScript that enables intuitive vector math using standard operators, transformed by Babel.
|
|
8
|
-
|
|
9
|
-
```typescript
|
|
10
|
-
// Instead of this:
|
|
11
|
-
const newPosition = mod(add(position, scale(velocity, dt)), worldSize)
|
|
12
|
-
|
|
13
|
-
// You can write this:
|
|
14
|
-
// @ts-expect-error - IngloriousScript operators are transformed by Babel
|
|
15
|
-
const newPosition = (position + velocity * dt) % worldSize
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
## Getting Started
|
|
19
|
-
|
|
20
|
-
This project was scaffolded with `@inglorious/create-game`.
|
|
21
|
-
|
|
22
|
-
To get started, follow these steps:
|
|
23
|
-
|
|
24
|
-
1. **Install dependencies**:
|
|
25
|
-
Navigate to your project directory and install the required packages.
|
|
26
|
-
```sh
|
|
27
|
-
pnpm install
|
|
28
|
-
```
|
|
29
|
-
2. **Start the development server**:
|
|
30
|
-
Run the following command to start the Vite development server.
|
|
31
|
-
```sh
|
|
32
|
-
pnpm dev
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
This will start a Vite development server. Open your browser to the local URL provided to see it in action.
|
|
36
|
-
|
|
37
|
-
## Project Setup
|
|
38
|
-
|
|
39
|
-
- `index.html`: The main entry point for your game.
|
|
40
|
-
- `src/`: Contains your game's source code. Files ending in `.its` use IngloriousScript with TypeScript.
|
|
41
|
-
- `vite.config.js`: Vite configuration with the Babel plugin for IngloriousScript.
|
|
42
|
-
- `tsconfig.json`: TypeScript configuration.
|
|
43
|
-
- `package.json`: Project metadata and dependencies.
|
|
44
|
-
|
|
45
|
-
### Using `.its` files
|
|
46
|
-
|
|
47
|
-
The `.its` extension is for TypeScript files that use IngloriousScript's operator overloading. Since TypeScript doesn't natively support this, you must add a `@ts-expect-error` comment above lines with vector operations. This is normal and expected.
|
|
48
|
-
|
|
49
|
-
```typescript
|
|
50
|
-
// @ts-expect-error - IngloriousScript operators are transformed by Babel
|
|
51
|
-
const newPosition = (position + velocity * deltaTime) % worldSize
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
### Editor Configuration (VS Code)
|
|
55
|
-
|
|
56
|
-
This template includes a `.vscode/settings.json` file that tells Visual Studio Code to treat `.its` files as TypeScript, enabling full syntax highlighting and IntelliSense.
|
|
57
|
-
|
|
58
|
-
```json
|
|
59
|
-
{
|
|
60
|
-
"files.associations": {
|
|
61
|
-
"*.its": "typescript"
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
```
|
|
1
|
+
# my-game
|
|
2
|
+
|
|
3
|
+
This project is a starter template for creating a game with the Inglorious Engine using **IngloriousScript with TypeScript**.
|
|
4
|
+
|
|
5
|
+
## What is IngloriousScript?
|
|
6
|
+
|
|
7
|
+
IngloriousScript is a superset of JavaScript that enables intuitive vector math using standard operators, transformed by Babel.
|
|
8
|
+
|
|
9
|
+
```typescript
|
|
10
|
+
// Instead of this:
|
|
11
|
+
const newPosition = mod(add(position, scale(velocity, dt)), worldSize)
|
|
12
|
+
|
|
13
|
+
// You can write this:
|
|
14
|
+
// @ts-expect-error - IngloriousScript operators are transformed by Babel
|
|
15
|
+
const newPosition = (position + velocity * dt) % worldSize
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Getting Started
|
|
19
|
+
|
|
20
|
+
This project was scaffolded with `@inglorious/create-game`.
|
|
21
|
+
|
|
22
|
+
To get started, follow these steps:
|
|
23
|
+
|
|
24
|
+
1. **Install dependencies**:
|
|
25
|
+
Navigate to your project directory and install the required packages.
|
|
26
|
+
```sh
|
|
27
|
+
pnpm install
|
|
28
|
+
```
|
|
29
|
+
2. **Start the development server**:
|
|
30
|
+
Run the following command to start the Vite development server.
|
|
31
|
+
```sh
|
|
32
|
+
pnpm dev
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
This will start a Vite development server. Open your browser to the local URL provided to see it in action.
|
|
36
|
+
|
|
37
|
+
## Project Setup
|
|
38
|
+
|
|
39
|
+
- `index.html`: The main entry point for your game.
|
|
40
|
+
- `src/`: Contains your game's source code. Files ending in `.its` use IngloriousScript with TypeScript.
|
|
41
|
+
- `vite.config.js`: Vite configuration with the Babel plugin for IngloriousScript.
|
|
42
|
+
- `tsconfig.json`: TypeScript configuration.
|
|
43
|
+
- `package.json`: Project metadata and dependencies.
|
|
44
|
+
|
|
45
|
+
### Using `.its` files
|
|
46
|
+
|
|
47
|
+
The `.its` extension is for TypeScript files that use IngloriousScript's operator overloading. Since TypeScript doesn't natively support this, you must add a `@ts-expect-error` comment above lines with vector operations. This is normal and expected.
|
|
48
|
+
|
|
49
|
+
```typescript
|
|
50
|
+
// @ts-expect-error - IngloriousScript operators are transformed by Babel
|
|
51
|
+
const newPosition = (position + velocity * deltaTime) % worldSize
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
### Editor Configuration (VS Code)
|
|
55
|
+
|
|
56
|
+
This template includes a `.vscode/settings.json` file that tells Visual Studio Code to treat `.its` files as TypeScript, enabling full syntax highlighting and IntelliSense.
|
|
57
|
+
|
|
58
|
+
```json
|
|
59
|
+
{
|
|
60
|
+
"files.associations": {
|
|
61
|
+
"*.its": "typescript"
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
```
|
package/templates/its/index.html
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8" />
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
-
<link rel="icon" type="image/svg+xml" href="/logo.png" />
|
|
7
|
-
<link rel="stylesheet" href="/style.css" />
|
|
8
|
-
<title>Inglorious Game</title>
|
|
9
|
-
</head>
|
|
10
|
-
|
|
11
|
-
<body>
|
|
12
|
-
<canvas id="canvas" width="800" height="600"></canvas>
|
|
13
|
-
<script type="module" src="./src/main.js"></script>
|
|
14
|
-
</body>
|
|
15
|
-
</html>
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<link rel="icon" type="image/svg+xml" href="/logo.png" />
|
|
7
|
+
<link rel="stylesheet" href="/style.css" />
|
|
8
|
+
<title>Inglorious Game</title>
|
|
9
|
+
</head>
|
|
10
|
+
|
|
11
|
+
<body>
|
|
12
|
+
<canvas id="canvas" width="800" height="600"></canvas>
|
|
13
|
+
<script type="module" src="./src/main.js"></script>
|
|
14
|
+
</body>
|
|
15
|
+
</html>
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
"author": "",
|
|
8
8
|
"license": "MIT",
|
|
9
9
|
"scripts": {
|
|
10
|
-
"format": "prettier --write
|
|
11
|
-
"lint": "eslint .
|
|
10
|
+
"format": "prettier --write .",
|
|
11
|
+
"lint": "eslint .",
|
|
12
12
|
"dev": "vite",
|
|
13
13
|
"build": "vite build",
|
|
14
14
|
"preview": "vite preview"
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
* {
|
|
2
|
-
box-sizing: border-box;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
body {
|
|
6
|
-
font-family: "Press Start 2P", system-ui;
|
|
7
|
-
width: 100vw;
|
|
8
|
-
height: 100vh;
|
|
9
|
-
margin: 0;
|
|
10
|
-
display: flex;
|
|
11
|
-
flex-direction: column;
|
|
12
|
-
justify-content: center;
|
|
13
|
-
align-items: center;
|
|
14
|
-
background-color: #000;
|
|
15
|
-
color: #fff;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
canvas {
|
|
19
|
-
max-width: 1280px;
|
|
20
|
-
max-height: 720px;
|
|
21
|
-
width: 100vw;
|
|
22
|
-
height: auto;
|
|
23
|
-
cursor: none;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
@media (orientation: landscape) and (pointer: coarse) {
|
|
27
|
-
canvas {
|
|
28
|
-
width: auto;
|
|
29
|
-
height: 100vh;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
img {
|
|
34
|
-
display: none;
|
|
35
|
-
}
|
|
1
|
+
* {
|
|
2
|
+
box-sizing: border-box;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
body {
|
|
6
|
+
font-family: "Press Start 2P", system-ui;
|
|
7
|
+
width: 100vw;
|
|
8
|
+
height: 100vh;
|
|
9
|
+
margin: 0;
|
|
10
|
+
display: flex;
|
|
11
|
+
flex-direction: column;
|
|
12
|
+
justify-content: center;
|
|
13
|
+
align-items: center;
|
|
14
|
+
background-color: #000;
|
|
15
|
+
color: #fff;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
canvas {
|
|
19
|
+
max-width: 1280px;
|
|
20
|
+
max-height: 720px;
|
|
21
|
+
width: 100vw;
|
|
22
|
+
height: auto;
|
|
23
|
+
cursor: none;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@media (orientation: landscape) and (pointer: coarse) {
|
|
27
|
+
canvas {
|
|
28
|
+
width: auto;
|
|
29
|
+
height: 100vh;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
img {
|
|
34
|
+
display: none;
|
|
35
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
semi: false
|
|
1
|
+
semi: false
|
package/templates/js/README.md
CHANGED
|
@@ -1,29 +1,29 @@
|
|
|
1
|
-
# my-game
|
|
2
|
-
|
|
3
|
-
This project is a minimal starter template for creating a game with the Inglorious Engine using plain JavaScript and Vite.
|
|
4
|
-
|
|
5
|
-
## Getting Started
|
|
6
|
-
|
|
7
|
-
This project was scaffolded with `@inglorious/create-game`.
|
|
8
|
-
|
|
9
|
-
To get started, follow these steps:
|
|
10
|
-
|
|
11
|
-
1. **Install dependencies**:
|
|
12
|
-
Navigate to your project directory and install the required packages.
|
|
13
|
-
```sh
|
|
14
|
-
pnpm install
|
|
15
|
-
```
|
|
16
|
-
2. **Start the development server**:
|
|
17
|
-
Run the following command to start the Vite development server.
|
|
18
|
-
```sh
|
|
19
|
-
pnpm dev
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
This will start a Vite development server. Open your browser to the local URL provided to see it in action.
|
|
23
|
-
|
|
24
|
-
## Project Setup
|
|
25
|
-
|
|
26
|
-
- `index.html`: The main entry point for your game.
|
|
27
|
-
- `src/`: Contains your game's JavaScript source code.
|
|
28
|
-
- `vite.config.js`: Vite configuration file.
|
|
29
|
-
- `package.json`: Project metadata and dependencies.
|
|
1
|
+
# my-game
|
|
2
|
+
|
|
3
|
+
This project is a minimal starter template for creating a game with the Inglorious Engine using plain JavaScript and Vite.
|
|
4
|
+
|
|
5
|
+
## Getting Started
|
|
6
|
+
|
|
7
|
+
This project was scaffolded with `@inglorious/create-game`.
|
|
8
|
+
|
|
9
|
+
To get started, follow these steps:
|
|
10
|
+
|
|
11
|
+
1. **Install dependencies**:
|
|
12
|
+
Navigate to your project directory and install the required packages.
|
|
13
|
+
```sh
|
|
14
|
+
pnpm install
|
|
15
|
+
```
|
|
16
|
+
2. **Start the development server**:
|
|
17
|
+
Run the following command to start the Vite development server.
|
|
18
|
+
```sh
|
|
19
|
+
pnpm dev
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
This will start a Vite development server. Open your browser to the local URL provided to see it in action.
|
|
23
|
+
|
|
24
|
+
## Project Setup
|
|
25
|
+
|
|
26
|
+
- `index.html`: The main entry point for your game.
|
|
27
|
+
- `src/`: Contains your game's JavaScript source code.
|
|
28
|
+
- `vite.config.js`: Vite configuration file.
|
|
29
|
+
- `package.json`: Project metadata and dependencies.
|
package/templates/js/index.html
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8" />
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
-
<link rel="icon" type="image/svg+xml" href="/logo.png" />
|
|
7
|
-
<link rel="stylesheet" href="/style.css" />
|
|
8
|
-
<title>Inglorious Game</title>
|
|
9
|
-
</head>
|
|
10
|
-
|
|
11
|
-
<body>
|
|
12
|
-
<canvas id="canvas" width="800" height="600"></canvas>
|
|
13
|
-
<script type="module" src="./src/main.js"></script>
|
|
14
|
-
</body>
|
|
15
|
-
</html>
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<link rel="icon" type="image/svg+xml" href="/logo.png" />
|
|
7
|
+
<link rel="stylesheet" href="/style.css" />
|
|
8
|
+
<title>Inglorious Game</title>
|
|
9
|
+
</head>
|
|
10
|
+
|
|
11
|
+
<body>
|
|
12
|
+
<canvas id="canvas" width="800" height="600"></canvas>
|
|
13
|
+
<script type="module" src="./src/main.js"></script>
|
|
14
|
+
</body>
|
|
15
|
+
</html>
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
"author": "",
|
|
8
8
|
"license": "MIT",
|
|
9
9
|
"scripts": {
|
|
10
|
-
"format": "prettier --write
|
|
11
|
-
"lint": "eslint .
|
|
10
|
+
"format": "prettier --write .",
|
|
11
|
+
"lint": "eslint .",
|
|
12
12
|
"dev": "vite",
|
|
13
13
|
"build": "vite build",
|
|
14
14
|
"preview": "vite preview"
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
* {
|
|
2
|
-
box-sizing: border-box;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
body {
|
|
6
|
-
font-family: "Press Start 2P", system-ui;
|
|
7
|
-
width: 100vw;
|
|
8
|
-
height: 100vh;
|
|
9
|
-
margin: 0;
|
|
10
|
-
display: flex;
|
|
11
|
-
flex-direction: column;
|
|
12
|
-
justify-content: center;
|
|
13
|
-
align-items: center;
|
|
14
|
-
background-color: #000;
|
|
15
|
-
color: #fff;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
canvas {
|
|
19
|
-
max-width: 1280px;
|
|
20
|
-
max-height: 720px;
|
|
21
|
-
width: 100vw;
|
|
22
|
-
height: auto;
|
|
23
|
-
cursor: none;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
@media (orientation: landscape) and (pointer: coarse) {
|
|
27
|
-
canvas {
|
|
28
|
-
width: auto;
|
|
29
|
-
height: 100vh;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
img {
|
|
34
|
-
display: none;
|
|
35
|
-
}
|
|
1
|
+
* {
|
|
2
|
+
box-sizing: border-box;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
body {
|
|
6
|
+
font-family: "Press Start 2P", system-ui;
|
|
7
|
+
width: 100vw;
|
|
8
|
+
height: 100vh;
|
|
9
|
+
margin: 0;
|
|
10
|
+
display: flex;
|
|
11
|
+
flex-direction: column;
|
|
12
|
+
justify-content: center;
|
|
13
|
+
align-items: center;
|
|
14
|
+
background-color: #000;
|
|
15
|
+
color: #fff;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
canvas {
|
|
19
|
+
max-width: 1280px;
|
|
20
|
+
max-height: 720px;
|
|
21
|
+
width: 100vw;
|
|
22
|
+
height: auto;
|
|
23
|
+
cursor: none;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@media (orientation: landscape) and (pointer: coarse) {
|
|
27
|
+
canvas {
|
|
28
|
+
width: auto;
|
|
29
|
+
height: 100vh;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
img {
|
|
34
|
+
display: none;
|
|
35
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
# my-game
|
|
2
|
-
|
|
3
|
-
A new game created with [@inglorious/create-game](https://www.npmjs.com/package/@inglorious/create-game).
|
|
4
|
-
|
|
5
|
-
This template is a minimal setup for running the Inglorious Engine directly in the browser without any build step.
|
|
6
|
-
|
|
7
|
-
## Getting Started
|
|
8
|
-
|
|
9
|
-
1. Open the `index.html` file in a modern web browser.
|
|
10
|
-
2. Edit the `game.js` file to start building your game!
|
|
1
|
+
# my-game
|
|
2
|
+
|
|
3
|
+
A new game created with [@inglorious/create-game](https://www.npmjs.com/package/@inglorious/create-game).
|
|
4
|
+
|
|
5
|
+
This template is a minimal setup for running the Inglorious Engine directly in the browser without any build step.
|
|
6
|
+
|
|
7
|
+
## Getting Started
|
|
8
|
+
|
|
9
|
+
1. Open the `index.html` file in a modern web browser.
|
|
10
|
+
2. Edit the `game.js` file to start building your game!
|
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8" />
|
|
5
|
-
<link rel="icon" type="image/svg+xml" href="/public/logo.png" />
|
|
6
|
-
<link rel="stylesheet" href="/public/style.css" />
|
|
7
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
8
|
-
<title>Inglorious Game</title>
|
|
9
|
-
</head>
|
|
10
|
-
|
|
11
|
-
<body>
|
|
12
|
-
<canvas id="canvas"></canvas>
|
|
13
|
-
|
|
14
|
-
<script type="text/javascript">
|
|
15
|
-
window.process = { env: "development" }
|
|
16
|
-
</script>
|
|
17
|
-
|
|
18
|
-
<script type="importmap">
|
|
19
|
-
{
|
|
20
|
-
"imports": {
|
|
21
|
-
"mutative": "https://unpkg.com/mutative@latest/dist/mutative.esm.mjs",
|
|
22
|
-
"@inglorious/utils/": "https://unpkg.com/@inglorious%2Futils@latest/src/",
|
|
23
|
-
"@inglorious/store/": "https://unpkg.com/@inglorious%2Fstore@latest/src/",
|
|
24
|
-
"@inglorious/engine/": "https://unpkg.com/@inglorious%2Fengine@latest/src/",
|
|
25
|
-
"@inglorious/renderer-2d/": "https://unpkg.com/@inglorious%2Frenderer-2d@latest/src/",
|
|
26
|
-
"game": "/src/game.js"
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
</script>
|
|
30
|
-
|
|
31
|
-
<script
|
|
32
|
-
type="module"
|
|
33
|
-
src="https://unpkg.com/@inglorious%2Fengine@latest/src/main.js"
|
|
34
|
-
></script>
|
|
35
|
-
</body>
|
|
36
|
-
</html>
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<link rel="icon" type="image/svg+xml" href="/public/logo.png" />
|
|
6
|
+
<link rel="stylesheet" href="/public/style.css" />
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
8
|
+
<title>Inglorious Game</title>
|
|
9
|
+
</head>
|
|
10
|
+
|
|
11
|
+
<body>
|
|
12
|
+
<canvas id="canvas"></canvas>
|
|
13
|
+
|
|
14
|
+
<script type="text/javascript">
|
|
15
|
+
window.process = { env: "development" }
|
|
16
|
+
</script>
|
|
17
|
+
|
|
18
|
+
<script type="importmap">
|
|
19
|
+
{
|
|
20
|
+
"imports": {
|
|
21
|
+
"mutative": "https://unpkg.com/mutative@latest/dist/mutative.esm.mjs",
|
|
22
|
+
"@inglorious/utils/": "https://unpkg.com/@inglorious%2Futils@latest/src/",
|
|
23
|
+
"@inglorious/store/": "https://unpkg.com/@inglorious%2Fstore@latest/src/",
|
|
24
|
+
"@inglorious/engine/": "https://unpkg.com/@inglorious%2Fengine@latest/src/",
|
|
25
|
+
"@inglorious/renderer-2d/": "https://unpkg.com/@inglorious%2Frenderer-2d@latest/src/",
|
|
26
|
+
"game": "/src/game.js"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
</script>
|
|
30
|
+
|
|
31
|
+
<script
|
|
32
|
+
type="module"
|
|
33
|
+
src="https://unpkg.com/@inglorious%2Fengine@latest/src/main.js"
|
|
34
|
+
></script>
|
|
35
|
+
</body>
|
|
36
|
+
</html>
|
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
* {
|
|
2
|
-
box-sizing: border-box;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
body {
|
|
6
|
-
width: 100vw;
|
|
7
|
-
height: 100vh;
|
|
8
|
-
margin: 0;
|
|
9
|
-
display: flex;
|
|
10
|
-
flex-direction: column;
|
|
11
|
-
justify-content: center;
|
|
12
|
-
align-items: center;
|
|
13
|
-
}
|
|
14
|
-
|
|
15
|
-
canvas {
|
|
16
|
-
max-width: 800px;
|
|
17
|
-
max-height: 600px;
|
|
18
|
-
width: 100vw;
|
|
19
|
-
height: auto;
|
|
20
|
-
cursor: none;
|
|
21
|
-
|
|
22
|
-
@media (orientation: landscape) and (pointer: coarse) {
|
|
23
|
-
canvas {
|
|
24
|
-
width: auto;
|
|
25
|
-
height: 100vh;
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
img {
|
|
31
|
-
display: none;
|
|
32
|
-
}
|
|
1
|
+
* {
|
|
2
|
+
box-sizing: border-box;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
body {
|
|
6
|
+
width: 100vw;
|
|
7
|
+
height: 100vh;
|
|
8
|
+
margin: 0;
|
|
9
|
+
display: flex;
|
|
10
|
+
flex-direction: column;
|
|
11
|
+
justify-content: center;
|
|
12
|
+
align-items: center;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
canvas {
|
|
16
|
+
max-width: 800px;
|
|
17
|
+
max-height: 600px;
|
|
18
|
+
width: 100vw;
|
|
19
|
+
height: auto;
|
|
20
|
+
cursor: none;
|
|
21
|
+
|
|
22
|
+
@media (orientation: landscape) and (pointer: coarse) {
|
|
23
|
+
canvas {
|
|
24
|
+
width: auto;
|
|
25
|
+
height: 100vh;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
img {
|
|
31
|
+
display: none;
|
|
32
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
semi: false
|
|
1
|
+
semi: false
|
package/templates/ts/README.md
CHANGED
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
# my-game
|
|
2
|
-
|
|
3
|
-
This project is a minimal starter template for creating a game with the Inglorious Engine using TypeScript and Vite.
|
|
4
|
-
|
|
5
|
-
## Getting Started
|
|
6
|
-
|
|
7
|
-
This project was scaffolded with `@inglorious/create-game`.
|
|
8
|
-
|
|
9
|
-
To get started, follow these steps:
|
|
10
|
-
|
|
11
|
-
1. **Install dependencies**:
|
|
12
|
-
Navigate to your project directory and install the required packages.
|
|
13
|
-
```sh
|
|
14
|
-
pnpm install
|
|
15
|
-
```
|
|
16
|
-
2. **Start the development server**:
|
|
17
|
-
Run the following command to start the Vite development server.
|
|
18
|
-
```sh
|
|
19
|
-
pnpm dev
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
This will start a Vite development server. Open your browser to the local URL provided to see it in action.
|
|
23
|
-
|
|
24
|
-
## Project Setup
|
|
25
|
-
|
|
26
|
-
- `index.html`: The main entry point for your game.
|
|
27
|
-
- `src/`: Contains your game's TypeScript source code.
|
|
28
|
-
- `vite.config.js`: Vite configuration file.
|
|
29
|
-
- `tsconfig.json`: TypeScript configuration for the project.
|
|
30
|
-
- `package.json`: Project metadata and dependencies.
|
|
1
|
+
# my-game
|
|
2
|
+
|
|
3
|
+
This project is a minimal starter template for creating a game with the Inglorious Engine using TypeScript and Vite.
|
|
4
|
+
|
|
5
|
+
## Getting Started
|
|
6
|
+
|
|
7
|
+
This project was scaffolded with `@inglorious/create-game`.
|
|
8
|
+
|
|
9
|
+
To get started, follow these steps:
|
|
10
|
+
|
|
11
|
+
1. **Install dependencies**:
|
|
12
|
+
Navigate to your project directory and install the required packages.
|
|
13
|
+
```sh
|
|
14
|
+
pnpm install
|
|
15
|
+
```
|
|
16
|
+
2. **Start the development server**:
|
|
17
|
+
Run the following command to start the Vite development server.
|
|
18
|
+
```sh
|
|
19
|
+
pnpm dev
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
This will start a Vite development server. Open your browser to the local URL provided to see it in action.
|
|
23
|
+
|
|
24
|
+
## Project Setup
|
|
25
|
+
|
|
26
|
+
- `index.html`: The main entry point for your game.
|
|
27
|
+
- `src/`: Contains your game's TypeScript source code.
|
|
28
|
+
- `vite.config.js`: Vite configuration file.
|
|
29
|
+
- `tsconfig.json`: TypeScript configuration for the project.
|
|
30
|
+
- `package.json`: Project metadata and dependencies.
|
package/templates/ts/index.html
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
<!doctype html>
|
|
2
|
-
<html lang="en">
|
|
3
|
-
<head>
|
|
4
|
-
<meta charset="UTF-8" />
|
|
5
|
-
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
-
<link rel="icon" type="image/svg+xml" href="/logo.png" />
|
|
7
|
-
<link rel="stylesheet" href="/style.css" />
|
|
8
|
-
<title>Inglorious Game</title>
|
|
9
|
-
</head>
|
|
10
|
-
|
|
11
|
-
<body>
|
|
12
|
-
<canvas id="canvas" width="800" height="600"></canvas>
|
|
13
|
-
<script type="module" src="./src/main.js"></script>
|
|
14
|
-
</body>
|
|
15
|
-
</html>
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<link rel="icon" type="image/svg+xml" href="/logo.png" />
|
|
7
|
+
<link rel="stylesheet" href="/style.css" />
|
|
8
|
+
<title>Inglorious Game</title>
|
|
9
|
+
</head>
|
|
10
|
+
|
|
11
|
+
<body>
|
|
12
|
+
<canvas id="canvas" width="800" height="600"></canvas>
|
|
13
|
+
<script type="module" src="./src/main.js"></script>
|
|
14
|
+
</body>
|
|
15
|
+
</html>
|
|
@@ -7,8 +7,8 @@
|
|
|
7
7
|
"author": "",
|
|
8
8
|
"license": "MIT",
|
|
9
9
|
"scripts": {
|
|
10
|
-
"format": "prettier --write
|
|
11
|
-
"lint": "eslint .
|
|
10
|
+
"format": "prettier --write .",
|
|
11
|
+
"lint": "eslint .",
|
|
12
12
|
"dev": "vite",
|
|
13
13
|
"build": "vite build",
|
|
14
14
|
"preview": "vite preview"
|
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
* {
|
|
2
|
-
box-sizing: border-box;
|
|
3
|
-
}
|
|
4
|
-
|
|
5
|
-
body {
|
|
6
|
-
font-family: "Press Start 2P", system-ui;
|
|
7
|
-
width: 100vw;
|
|
8
|
-
height: 100vh;
|
|
9
|
-
margin: 0;
|
|
10
|
-
display: flex;
|
|
11
|
-
flex-direction: column;
|
|
12
|
-
justify-content: center;
|
|
13
|
-
align-items: center;
|
|
14
|
-
background-color: #000;
|
|
15
|
-
color: #fff;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
canvas {
|
|
19
|
-
max-width: 1280px;
|
|
20
|
-
max-height: 720px;
|
|
21
|
-
width: 100vw;
|
|
22
|
-
height: auto;
|
|
23
|
-
cursor: none;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
@media (orientation: landscape) and (pointer: coarse) {
|
|
27
|
-
canvas {
|
|
28
|
-
width: auto;
|
|
29
|
-
height: 100vh;
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
img {
|
|
34
|
-
display: none;
|
|
35
|
-
}
|
|
1
|
+
* {
|
|
2
|
+
box-sizing: border-box;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
body {
|
|
6
|
+
font-family: "Press Start 2P", system-ui;
|
|
7
|
+
width: 100vw;
|
|
8
|
+
height: 100vh;
|
|
9
|
+
margin: 0;
|
|
10
|
+
display: flex;
|
|
11
|
+
flex-direction: column;
|
|
12
|
+
justify-content: center;
|
|
13
|
+
align-items: center;
|
|
14
|
+
background-color: #000;
|
|
15
|
+
color: #fff;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
canvas {
|
|
19
|
+
max-width: 1280px;
|
|
20
|
+
max-height: 720px;
|
|
21
|
+
width: 100vw;
|
|
22
|
+
height: auto;
|
|
23
|
+
cursor: none;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
@media (orientation: landscape) and (pointer: coarse) {
|
|
27
|
+
canvas {
|
|
28
|
+
width: auto;
|
|
29
|
+
height: 100vh;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
img {
|
|
34
|
+
display: none;
|
|
35
|
+
}
|