def _dosimeter(tt): #use function two options: 1) toggles on/off. 2) displays a reading only when you use it. rog.make(tt, WATERKILLS) rog.make(tt, CANUSE) rog.makeEquip(tt, EQ_MAINHAND) tt.statMods = { "range": 3, "atk": 2, "dmg": 1, } def funcPlayer(self, obj): xx = obj.x yy = obj.y reading = rog.radsat(xx, yy) rog.msg("The geiger counter reads '{} RADS'".format(reading)) #could do, instead: # use turns it on, activates an observer. # updates when rad damage received by player. Adds rad value to dosimeter # when you use again, you can either read it or turn it off. rog.drain(obj, 'nrg', NRG_USE) def funcMonster(self, obj): rog.drain(obj, 'nrg', NRG_USE) rog.event_sight(obj.x, obj.y, "{t}{n} looks at a geiger counter.") def funcDeath(self): rog.explosion(self.name, self.x, self.y, 1) tt.useFunctionPlayer = funcPlayer tt.useFunctionMonster = funcMonster tt.deathFunction = funcDeath
def _towel(tt): rog.make(tt, CANWET) rog.make(tt, CANUSE) rog.makeEquip(tt, EQ_BODY) tt.statMods={"rescold":20,} tt.useFunctionPlayer = action.towel_pc tt.useFunctionMonster = action.towel
def _towel_wield( tt ): #prepare a towel for wielding. Transforms it into a wielding item. rog.makeEquip(tt, EQ_MAINHAND) tt.statMods = { "atk": 3, "dmg": 2, }
def _extinguisher(tt): rog.make(tt, CANUSE) ## tt.useFunctionPlayer = action.extinguisher_pc ## tt.useFunctionMonster = action.extinguisher rog.makeEquip(tt, EQ_MAINHAND) tt.statMods = { "dmg": 5, "asp": -33, }
def _towel_wield( tt): #prepare a towel for headwear. Transforms it into head gear rog.makeEquip(tt, EQ_HEAD) tt.statMods = { "resbio": 15, }