-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmain.js
77 lines (66 loc) · 1.96 KB
/
main.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
import { Imports } from "./lib/import.js";
// import kd, { tick } from "./lib/utills/KeyManager.js";
var game = new Imports(this)
var fps=0
var autoSave = 100
game.menu.preTick()
requestAnimationFrame(stick)
game.load()
function stick(){
game.debug.BeginProfiler("fullTick")
requestAnimationFrame(stick)
// // document.getElementById("debug").innerHTML = `A not pressed ${game.player.x}`;
// if(kd.RIGHT.isDown()){
// game.camera.velR = -10
// }
// if(kd.LEFT.isDown()){
// game.camera.velR = 10
// }
// if(kd.Q.isDown()){
// game.camera.ImpactCameraShake()
// }
var axes = []
axes=game.controller.controllerCheck("axes")
var buttons = []
buttons=game.controller.controllerCheck("buttons")
if(fps<60 || kd.F.isDown()){
game.controller.tick()
if(kd.P.isDown()||buttons[9]){
game.state = "menu"
}
if(game.state == "game"){
game.timer.tick()
game.camera.tick()
game.player.tick() // OPTIMIZE?
game.held.tick()
autoSave--
if(autoSave<=0){
game.save() // OPTIMIZED BY ONLY HAPPENING EVERY 400 TICKS
autoSave=400
// alert("AUTOSAVE!")
}
}
game.background.tick() // OPTIMIZE?
// game.debug.EndProfiler()
game.display.tick() // OPTIMIZED BY USING CASHED MAP INSTEAD OF DRAWING AROUND THE PLAYER EVERY TICK
kd.tick()
game.debug.tick()
if(game.state=="menu"||game.menu.alpha>0){
game.menu.tick()
}
FPSCalc()
// game.debug.EndProfiler()
if(kd.J.isDown()){
game.debug.EndProfiler("fullTick")
}
}
}
async function FPSCalc(){
fps++
await sleep(1000)
fps--
game.debug.fpsCount = fps
}
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}