mirror of
https://github.com/MightyPirates/OpenComputers.git
synced 2025-09-14 01:39:36 -04:00
Don't consume XP items when upgrade is at max level. Closes #2035.
This commit is contained in:
parent
feb886b9f7
commit
4dccd26b04
@ -24,6 +24,8 @@ import scala.collection.convert.WrapAsJava._
|
||||
import scala.collection.convert.WrapAsScala._
|
||||
|
||||
class UpgradeExperience(val host: EnvironmentHost with internal.Agent) extends prefab.ManagedEnvironment with DeviceInfo {
|
||||
final val MaxLevel = 30
|
||||
|
||||
override val node = api.Network.newNode(this, Visibility.Network).
|
||||
withComponent("experience").
|
||||
withConnector(30 * Settings.get.bufferPerLevel).
|
||||
@ -50,7 +52,7 @@ class UpgradeExperience(val host: EnvironmentHost with internal.Agent) extends p
|
||||
def xpForNextLevel = xpForLevel(level + 1)
|
||||
|
||||
def addExperience(value: Double) {
|
||||
if (level < 30) {
|
||||
if (level < MaxLevel) {
|
||||
experience = experience + value
|
||||
if (experience >= xpForNextLevel) {
|
||||
updateXpInfo()
|
||||
@ -76,6 +78,9 @@ class UpgradeExperience(val host: EnvironmentHost with internal.Agent) extends p
|
||||
|
||||
@Callback(doc = """function():boolean -- Tries to consume an enchanted item to add experience to the upgrade.""")
|
||||
def consume(context: Context, args: Arguments): Array[AnyRef] = {
|
||||
if (level >= MaxLevel) {
|
||||
return result(Unit, "max level")
|
||||
}
|
||||
val stack = host.mainInventory.getStackInSlot(host.selectedSlot)
|
||||
if (stack == null || stack.stackSize < 1) {
|
||||
return result(Unit, "no item")
|
||||
|
Loading…
x
Reference in New Issue
Block a user