You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, in order to write the "Magic Kingdom Mountaineer" achievement, you must write this:
achievement {
name "Magic Kingdom Mountaineer"
description "Ride the three mountains of Magic Kingdom without warping or teleporting"
icon "IRON_SPADE:20"
reward "MONEY:500"
initialState {
rodeSpaceMountain: falserodeBigThunderMountain: falserodeSplashMountain: falsewarpedOrTeleported: false
}
activators {
state.rodeSpaceMountain && state.rodeBigThunderMountain && state.rodeSplashMountain
}
deactivators {
state.warpedOrTeleported
}
events {
on("CompleteRideEvent") {
if (event.rideId ==1) {
state.rodeSpaceMountain =true
}
if (event.rideId ==2) {
state.rodeBigThunderMountain =true
}
if (event.rideId ==3) {
state.rodeSplashMountain =true
}
}
on("TeleportPlayerToPlayerEvent") {
state.warpedOrTeleported =true
}
on("PlayerWarpEvent") {
state.warpedOrTeleported =true
}
}
}
This is very verbose, and one can imagine LOTS of achievements that would want to use the notion of completing rides and disallowing warping/teleporting. I propose a modular system for the BIGAL DSL that would make the "Magic Kingdom Mountaineer" achievement look like this:
achievement {
name "Magic Kingdom Mountaineer"
description "Ride the three mountains of Magic Kingdom without warping or teleporting"
icon "IRON_SPADE:20"
reward "MONEY:500"
activators {
completeRide(id: 1) && completeRide(id: 2) && completeRide(id: 3)
}
deactivators {
warpOrTeleport()
}
}
It's important that the state scopes don't conflict, I should be able to use the completeRide module in a module or achievement that has its own rodeIt variable.
The text was updated successfully, but these errors were encountered:
Currently, in order to write the "Magic Kingdom Mountaineer" achievement, you must write this:
This is very verbose, and one can imagine LOTS of achievements that would want to use the notion of completing rides and disallowing warping/teleporting. I propose a modular system for the BIGAL DSL that would make the "Magic Kingdom Mountaineer" achievement look like this:
and modules that look something like this:
It's important that the state scopes don't conflict, I should be able to use the
completeRide
module in a module or achievement that has its ownrodeIt
variable.The text was updated successfully, but these errors were encountered: