Change name of update_animation function

I will use this for sounds, and so it needs to be changed to a more general name
master
orwell96 2017-11-29 17:20:46 +01:00
parent 7681de96c9
commit 83df46d786
3 changed files with 11 additions and 6 deletions

View File

@ -99,8 +99,9 @@ advtrains.register_wagon(name, prototype, description, inventory_image)
^- optional: Execute custom code on every step ^- optional: Execute custom code on every step
custom_on_activate = function(self, dtime_s) end custom_on_activate = function(self, dtime_s) end
^- optional: Execute custom code on activate. Staticdata does not need to be saved and restored since all properties written in 'self' are preserved over unloads. ^- optional: Execute custom code on activate. Staticdata does not need to be saved and restored since all properties written in 'self' are preserved over unloads.
update_animation = function(self, velocity) end custom_on_velocity_change = function(self, velocity, old_velocity) end
^- optional: Function that is called whenever the train's velocity changes or every 2 seconds. Used to call 'self.object:update_animation()' if needed. ^- optional: Function that is called whenever the train's velocity changes or every 2 seconds. Used to call 'self.object:update_animation()' if needed.
^- for compatibility reasons the name 'update_animation' for this function is still supported.
} }
@ -164,4 +165,4 @@ minetest.register_node(nodename, {
on_train_leave=function(pos, train_id) end on_train_leave=function(pos, train_id) end
^- called when a train leaves the rail ^- called when a train leaves the rail
} }
}) })

View File

@ -502,12 +502,16 @@ function wagon:on_step(dtime)
self.object:setyaw(yaw) self.object:setyaw(yaw)
self.updatepct_timer=2 self.updatepct_timer=2
if self.update_animation then if self.update_animation then
self:update_animation(gp.velocity) self:update_animation(gp.velocity, self.old_velocity)
end
if self.custom_on_velocity_change then
self:custom_on_velocity_change(gp.velocity, self.old_velocity)
end end
end end
self.old_velocity_vector=velocityvec self.old_velocity_vector=velocityvec
self.old_velocity = gp.velocity
self.old_acceleration_vector=accelerationvec self.old_acceleration_vector=accelerationvec
self.old_yaw=yaw self.old_yaw=yaw
atprintbm("wagon step", t) atprintbm("wagon step", t)

View File

@ -37,7 +37,7 @@ advtrains.register_wagon("newlocomotive", {
visual_size = {x=1, y=1}, visual_size = {x=1, y=1},
wagon_span=2.3, wagon_span=2.3,
collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0}, collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0},
update_animation=function(self, velocity) custom_on_velocity_change=function(self, velocity)
if self.old_anim_velocity~=advtrains.abs_ceil(velocity) then if self.old_anim_velocity~=advtrains.abs_ceil(velocity) then
self.object:set_animation({x=1,y=80}, advtrains.abs_ceil(velocity)*15, 0, true) self.object:set_animation({x=1,y=80}, advtrains.abs_ceil(velocity)*15, 0, true)
self.old_anim_velocity=advtrains.abs_ceil(velocity) self.old_anim_velocity=advtrains.abs_ceil(velocity)
@ -105,7 +105,7 @@ advtrains.register_wagon("detailed_steam_engine", {
visual_size = {x=1, y=1}, visual_size = {x=1, y=1},
wagon_span=2.05, wagon_span=2.05,
collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0}, collisionbox = {-1.0,-0.5,-1.0, 1.0,2.5,1.0},
update_animation=function(self, velocity) custom_on_velocity_change=function(self, velocity)
if self.old_anim_velocity~=advtrains.abs_ceil(velocity) then if self.old_anim_velocity~=advtrains.abs_ceil(velocity) then
self.object:set_animation({x=1,y=80}, advtrains.abs_ceil(velocity)*15, 0, true) self.object:set_animation({x=1,y=80}, advtrains.abs_ceil(velocity)*15, 0, true)
self.old_anim_velocity=advtrains.abs_ceil(velocity) self.old_anim_velocity=advtrains.abs_ceil(velocity)