Commit 93541805f8cad208773d1cd7fa7e7c6785021d73
1 parent
14f6bdf8
Rune of the Rift/Time Skip will not heal the target to full
git-svn-id: http://svn.net-core.org/repos/t-engine4@3315 51575b47-30f0-44d4-a5cc-537603b46e54
Showing
5 changed files
with
11 additions
and
15 deletions
... | ... | @@ -1231,7 +1231,7 @@ function _M:resolveSource() |
1231 | 1231 | end |
1232 | 1232 | |
1233 | 1233 | function _M:die(src) |
1234 | - if self.dead then self:disappear(src) return true end | |
1234 | + if self.dead then self:disappear(src) self:deleteFromMap(game.level.map) return true end | |
1235 | 1235 | |
1236 | 1236 | engine.interface.ActorLife.die(self, src) |
1237 | 1237 | |
... | ... | @@ -2498,7 +2498,7 @@ end |
2498 | 2498 | --- Call when added to a level |
2499 | 2499 | -- Used to make escorts and such |
2500 | 2500 | function _M:addedToLevel(level, x, y) |
2501 | - self:resetToFull() | |
2501 | + if not self._rst_full then self:resetToFull() self._rst_full = true end -- Only do it once, the first time we come into being | |
2502 | 2502 | if self.make_escort then |
2503 | 2503 | for _, filter in ipairs(self.make_escort) do |
2504 | 2504 | for i = 1, filter.number do | ... | ... |
... | ... | @@ -113,8 +113,6 @@ newTalent{ |
113 | 113 | return |
114 | 114 | end |
115 | 115 | |
116 | - -- Keep the Actor from leveling on return | |
117 | - target.forceLevelup = false | |
118 | 116 | -- Create an object to time the effect and store the creature |
119 | 117 | -- First, clone the terrain that we are replacing |
120 | 118 | local terrain = game.level.map(target.x, target.y, engine.Map.TERRAIN) |
... | ... | @@ -200,11 +198,11 @@ newTalent{ |
200 | 198 | end |
201 | 199 | end, |
202 | 200 | activate = function(self, t) |
203 | - | |
201 | + | |
204 | 202 | if checkTimeline(self) == true then |
205 | 203 | return |
206 | 204 | end |
207 | - | |
205 | + | |
208 | 206 | game:playSoundNear(self, "talents/arcane") |
209 | 207 | return { |
210 | 208 | game:chronoClone("revision"), |
... | ... | @@ -237,25 +235,25 @@ newTalent{ |
237 | 235 | no_npc_use = true, |
238 | 236 | on_pre_use = function(self, t, silent) if not self:isTalentActive(self.T_DOOR_TO_THE_PAST) then if not silent then game.logPlayer(self, "Door to the Past must be active to use this talent.") end return false end return true end, |
239 | 237 | action = function(self, t) |
240 | - | |
238 | + | |
241 | 239 | -- Prevent Revision After Death |
242 | 240 | if game._chronoworlds == nil then |
243 | 241 | game.logPlayer(game.player, "#LIGHT_RED#Your spell fizzles.") |
244 | 242 | return |
245 | - end | |
246 | - | |
243 | + end | |
244 | + | |
247 | 245 | game:onTickEnd(function() |
248 | 246 | if not game:chronoRestore("revision", true) then |
249 | 247 | game.logSeen(self, "#LIGHT_RED#The spell fizzles.") |
250 | 248 | return |
251 | 249 | end |
252 | 250 | game.logPlayer(game.player, "#LIGHT_BLUE#You unfold the spacetime continuum to a previous state!") |
253 | - | |
251 | + | |
254 | 252 | -- Manualy start the cooldown of the "old player" |
255 | 253 | game.player:startTalentCooldown(t) |
256 | 254 | game.player:incParadox(t.paradox * (1 + (game.player.paradox / 300))) |
257 | 255 | end) |
258 | - | |
256 | + | |
259 | 257 | return true |
260 | 258 | end, |
261 | 259 | info = function(self, t) | ... | ... |
... | ... | @@ -688,8 +688,6 @@ newInscription{ |
688 | 688 | return |
689 | 689 | end |
690 | 690 | |
691 | - -- Keep the Actor from leveling on return | |
692 | - target.forceLevelup = false | |
693 | 691 | -- Create an object to time the effect and store the creature |
694 | 692 | -- First, clone the terrain that we are replacing |
695 | 693 | local terrain = game.level.map(target.x, target.y, engine.Map.TERRAIN) | ... | ... |
-
Please register or login to post a comment