class Player{
def stats
}
class ProxyStat{
def baseStats
def effects = []
def methodCalled (def name, args …){
If(name == "getStrength"){
effects.each(){ it -> it.modifyStrength(base.strength)}
}
}
}
class Effect{
def modifier = 3 // say
def modifyStrength(def str){
str - modifier
}
}
class stat{
def strength
def con
def wis
def dex
}