Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions src/WorldProxy.cc
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,8 @@ namespace enigma {
return server::LevelTime; // read only
} else if (key == "ProvideExtralifes") {
return server::ProvideExtralifes;
} else if (key == "ProvideYinYang") {
return server::ProvideYinYang;
} else if (key == "InfiniteReincarnation") {
return server::InfiniteReincarnation;
} else if (key == "ShowMoves") {
Expand Down Expand Up @@ -199,6 +201,9 @@ namespace enigma {
ASSERT(server::ProvideExtralifes || !newFlag, XLevelRuntime,
"Attribute 'ProvideExtralifes': toggling from false to true not allowed");
server::ProvideExtralifes = newFlag;
} else if (key == "ProvideYinYang") {
bool newFlag = val.to_bool();
server::ProvideYinYang = newFlag;
} else if (key == "InfiniteReincarnation") {
server::InfiniteReincarnation = val.to_bool();
} else if (key == "ShowMoves") {
Expand Down
6 changes: 5 additions & 1 deletion src/player.cc
Original file line number Diff line number Diff line change
Expand Up @@ -182,8 +182,12 @@ void player::AddYinYang() {
}

void player::LevelLoaded(bool isRestart) {
if (server::TwoPlayerGame && server::SingleComputerGame)
if (server::TwoPlayerGame && server::SingleComputerGame) {
AddYinYang();
}
if (server::ProvideYinYang) {
AddYinYang();
}
RedrawInventory();
}

Expand Down
2 changes: 2 additions & 0 deletions src/server.cc
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@ bool ConserveLevel;
bool IsDifficult; // read only for Lua
bool IsLevelRestart; // no Lua access
bool ProvideExtralifes;
bool ProvideYinYang;
bool InfiniteReincarnation;
bool SurviveFinish;
int AddSecondsToScore;
Expand Down Expand Up @@ -253,6 +254,7 @@ void PrepareLevel() {
LevelTime = 0.0;
ConserveLevel = true;
ProvideExtralifes = true;
ProvideYinYang = false;
InfiniteReincarnation = false;
SurviveFinish = true;
AddSecondsToScore = 0;
Expand Down
1 change: 1 addition & 0 deletions src/server.hh
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ extern bool ConserveLevel;
extern bool IsDifficult;
extern bool IsLevelRestart;
extern bool ProvideExtralifes;
extern bool ProvideYinYang;
extern bool InfiniteReincarnation; // do not remove extralife on respawn
extern bool SurviveFinish;
extern int AddSecondsToScore;
Expand Down