10 explicit JSCallback(emscripten::val jsCallback)
11 :
Callback(), jsCallback(jsCallback) {}
14 void autoGoto(
Micropolis *micropolis, emscripten::val callbackVal,
int x,
int y, std::string message)
override {
15 jsCallback.call<
void>(
"autoGoto", emscripten::val(micropolis), callbackVal, x, y, message);
18 void didGenerateMap(
Micropolis *micropolis, emscripten::val callbackVal,
int seed)
override {
19 jsCallback.call<
void>(
"didGenerateMap", emscripten::val(micropolis), callbackVal, seed);
22 void didLoadCity(
Micropolis *micropolis, emscripten::val callbackVal, std::string filename)
override {
23 jsCallback.call<
void>(
"didLoadCity", emscripten::val(micropolis), callbackVal, filename);
26 void didLoadScenario(
Micropolis *micropolis, emscripten::val callbackVals, std::string name, std::string fname)
override {
27 jsCallback.call<
void>(
"didLoadScenario", emscripten::val(micropolis), callbackVals, name, fname);
30 void didLoseGame(
Micropolis *micropolis, emscripten::val callbackVal)
override {
31 jsCallback.call<
void>(
"didLoseGame", emscripten::val(micropolis), callbackVal);
34 void didSaveCity(
Micropolis *micropolis, emscripten::val callbackVal, std::string filename)
override {
35 jsCallback.call<
void>(
"didSaveCity", emscripten::val(micropolis), callbackVal, filename);
38 void didTool(
Micropolis *micropolis, emscripten::val callbackVal, std::string name,
int x,
int y)
override {
39 jsCallback.call<
void>(
"didTool", emscripten::val(micropolis), callbackVal, name, x, y);
42 void didWinGame(
Micropolis *micropolis, emscripten::val callbackVal)
override {
43 jsCallback.call<
void>(
"didWinGame", emscripten::val(micropolis), callbackVal);
46 void didntLoadCity(
Micropolis *micropolis, emscripten::val callbackVal, std::string filename)
override {
47 jsCallback.call<
void>(
"didntLoadCity", emscripten::val(micropolis), callbackVal, filename);
50 void didntSaveCity(
Micropolis *micropolis, emscripten::val callbackVal, std::string filename)
override {
51 jsCallback.call<
void>(
"didntSaveCity", emscripten::val(micropolis), callbackVal, filename);
54 void makeSound(
Micropolis *micropolis, emscripten::val callbackVal, std::string channel, std::string sound,
int x,
int y)
override {
55 jsCallback.call<
void>(
"makeSound", emscripten::val(micropolis), callbackVal, channel, sound, x, y);
58 void newGame(
Micropolis *micropolis, emscripten::val callbackVal)
override {
59 jsCallback.call<
void>(
"newGame", emscripten::val(micropolis), callbackVal);
62 void saveCityAs(
Micropolis *micropolis, emscripten::val callbackVal, std::string filename)
override {
63 jsCallback.call<
void>(
"saveCityAs", emscripten::val(micropolis), callbackVal, filename);
66 void sendMessage(
Micropolis *micropolis, emscripten::val callbackVal,
int messageIndex,
int x,
int y,
bool picture,
bool important)
override {
67 jsCallback.call<
void>(
"sendMessage", emscripten::val(micropolis), callbackVal, messageIndex, x, y, picture, important);
70 void showBudgetAndWait(
Micropolis *micropolis, emscripten::val callbackVal)
override {
71 jsCallback.call<
void>(
"showBudgetAndWait", emscripten::val(micropolis), callbackVal);
74 void showZoneStatus(
Micropolis *micropolis, emscripten::val callbackVal,
int tileCategoryIndex,
int populationDensityIndex,
int landValueIndex,
int crimeRateIndex,
int pollutionIndex,
int growthRateIndex,
int x,
int y)
override {
75 jsCallback.call<
void>(
"showZoneStatus", emscripten::val(micropolis), callbackVal, tileCategoryIndex, populationDensityIndex, landValueIndex, crimeRateIndex, pollutionIndex, growthRateIndex, x, y);
78 void simulateRobots(
Micropolis *micropolis, emscripten::val callbackVal)
override {
79 jsCallback.call<
void>(
"simulateRobots", emscripten::val(micropolis), callbackVal);
82 void simulateChurch(
Micropolis *micropolis, emscripten::val callbackVal,
int posX,
int posY,
int churchNumber)
override {
83 jsCallback.call<
void>(
"simulateChurch", emscripten::val(micropolis), callbackVal, posX, posY, churchNumber);
86 void startEarthquake(
Micropolis *micropolis, emscripten::val callbackVal,
int strength)
override {
87 jsCallback.call<
void>(
"startEarthquake", emscripten::val(micropolis), callbackVal, strength);
90 void startGame(
Micropolis *micropolis, emscripten::val callbackVal)
override {
91 jsCallback.call<
void>(
"startGame", emscripten::val(micropolis), callbackVal);
94 void startScenario(
Micropolis *micropolis, emscripten::val callbackVal,
int scenario)
override {
95 jsCallback.call<
void>(
"startScenario", emscripten::val(micropolis), callbackVal, scenario);
98 void updateBudget(
Micropolis *micropolis, emscripten::val callbackVal)
override {
99 jsCallback.call<
void>(
"updateBudget", emscripten::val(micropolis), callbackVal);
102 void updateCityName(
Micropolis *micropolis, emscripten::val callbackVal, std::string cityName)
override {
103 jsCallback.call<
void>(
"updateCityName", emscripten::val(micropolis), callbackVal, cityName);
106 void updateDate(
Micropolis *micropolis, emscripten::val callbackVal,
int cityYear,
int cityMonth)
override {
107 jsCallback.call<
void>(
"updateDate", emscripten::val(micropolis), callbackVal, cityYear, cityMonth);
110 void updateDemand(
Micropolis *micropolis, emscripten::val callbackVal,
float r,
float c,
float i)
override {
111 jsCallback.call<
void>(
"updateDemand", emscripten::val(micropolis), callbackVal, r, c, i);
114 void updateEvaluation(
Micropolis *micropolis, emscripten::val callbackVal)
override {
115 jsCallback.call<
void>(
"updateEvaluation", emscripten::val(micropolis), callbackVal);
118 void updateFunds(
Micropolis *micropolis, emscripten::val callbackVal,
int totalFunds)
override {
119 jsCallback.call<
void>(
"updateFunds", emscripten::val(micropolis), callbackVal, totalFunds);
122 void updateGameLevel(
Micropolis *micropolis, emscripten::val callbackVal,
int gameLevel)
override {
123 jsCallback.call<
void>(
"updateGameLevel", emscripten::val(micropolis), callbackVal, gameLevel);
126 void updateHistory(
Micropolis *micropolis, emscripten::val callbackVal)
override {
127 jsCallback.call<
void>(
"updateHistory", emscripten::val(micropolis), callbackVal);
130 void updateMap(
Micropolis *micropolis, emscripten::val callbackVal)
override {
131 jsCallback.call<
void>(
"updateMap", emscripten::val(micropolis), callbackVal);
134 void updateOptions(
Micropolis *micropolis, emscripten::val callbackVal)
override {
135 jsCallback.call<
void>(
"updateOptions", emscripten::val(micropolis), callbackVal);
138 void updatePasses(
Micropolis *micropolis, emscripten::val callbackVal,
int passes)
override {
139 jsCallback.call<
void>(
"updatePasses", emscripten::val(micropolis), callbackVal, passes);
142 void updatePaused(
Micropolis *micropolis, emscripten::val callbackVal,
bool simPaused)
override {
143 jsCallback.call<
void>(
"updatePaused", emscripten::val(micropolis), callbackVal, simPaused);
146 void updateSpeed(
Micropolis *micropolis, emscripten::val callbackVal,
int speed)
override {
147 jsCallback.call<
void>(
"updateSpeed", emscripten::val(micropolis), callbackVal, speed);
150 void updateTaxRate(
Micropolis *micropolis, emscripten::val callbackVal,
int cityTax)
override {
151 jsCallback.call<
void>(
"updateTaxRate", emscripten::val(micropolis), callbackVal, cityTax);
155 emscripten::val jsCallback;