start the testing
This commit is contained in:
parent
0686ca78ae
commit
a289936913
2 changed files with 48 additions and 9 deletions
|
@ -14,10 +14,19 @@ use wasm_bindgen::prelude::*;
|
|||
#[global_allocator]
|
||||
static ALLOC: wee_alloc::WeeAlloc = wee_alloc::WeeAlloc::INIT;
|
||||
|
||||
#[wasm_bindgen]
|
||||
pub struct Location {
|
||||
x: f64,
|
||||
y: f64,
|
||||
angle: f64,
|
||||
}
|
||||
|
||||
#[wasm_bindgen]
|
||||
pub struct Game {
|
||||
states : Vec<types::State>,
|
||||
|
||||
/* put extra shit here */
|
||||
current_turn: Vec<Location>,
|
||||
}
|
||||
|
||||
#[wasm_bindgen]
|
||||
|
@ -31,13 +40,28 @@ impl Game {
|
|||
).collect();
|
||||
|
||||
Self {
|
||||
states
|
||||
states,
|
||||
current_turn: Vec::new()
|
||||
}
|
||||
}
|
||||
|
||||
pub fn turn_count(&self) -> usize {
|
||||
self.states.len()
|
||||
}
|
||||
|
||||
pub fn add_location(&mut self, x: f64, y: f64, angle: f64) {
|
||||
self.current_turn.push(
|
||||
Location { x, y, angle}
|
||||
);
|
||||
}
|
||||
|
||||
pub fn location_count(&self) -> usize {
|
||||
self.current_turn.len()
|
||||
}
|
||||
|
||||
pub fn locations(&self) -> *const Location {
|
||||
self.current_turn.as_ptr()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1,16 +1,31 @@
|
|||
import { Game } from "planetwars";
|
||||
import { memory } from "planetwars/plantwars_bg"
|
||||
|
||||
const URL = window.location.origin+window.location.pathname;
|
||||
const LOCATION = URL.substring(0, URL.lastIndexOf("/") + 1);
|
||||
|
||||
const game_location = LOCATION + "static/game.json";
|
||||
|
||||
fetch(game_location)
|
||||
.then((r) => r.text())
|
||||
.then((response) => {
|
||||
console.log(response);
|
||||
let game = Game.new(response);
|
||||
console.log(game.turn_count());
|
||||
}).catch(console.error);
|
||||
// fetch(game_location)
|
||||
// .then((r) => r.text())
|
||||
// .then((response) => {
|
||||
// console.log(response);
|
||||
// let game = Game.new(response);
|
||||
// console.log(game.turn_count());
|
||||
// }).catch(console.error);
|
||||
|
||||
|
||||
|
||||
const g = Game.new("");
|
||||
|
||||
const p1 = g.locations();
|
||||
const s1 = g.location_count();
|
||||
console.log(p1, s1);
|
||||
const a1 = new Float64Array(memory.buffer, p1, s1 * 3);
|
||||
console.log(a1);
|
||||
|
||||
g.add_location(0.5, 1.2, 3.14);
|
||||
|
||||
const p2 = g.locations();
|
||||
const s2 = g.location_count();
|
||||
const a2 = new Float64Array(memory.buffer, p2, s2 * 3);
|
||||
console.log(a2);
|
||||
|
|
Loading…
Reference in a new issue