From e0ce022cacd3e533f525dc36669fadc784ccb623 Mon Sep 17 00:00:00 2001 From: crabman77 Date: Sun, 3 Jan 2016 23:01:40 +0100 Subject: [PATCH] fix only play pclasses sound to player and only if player switch classes --- mods/mff/mff_pclasses/admin.lua | 6 ++++-- mods/mff/mff_pclasses/hunter.lua | 8 +++++--- mods/mff/mff_pclasses/warrior.lua | 8 +++++--- mods/mff/mff_pclasses/wizard.lua | 8 +++++--- mods/pclasses/adventurer.lua | 6 ++++-- mods/pclasses/api.lua | 4 ++-- mods/pclasses/nodes.lua | 2 +- 7 files changed, 26 insertions(+), 16 deletions(-) diff --git a/mods/mff/mff_pclasses/admin.lua b/mods/mff/mff_pclasses/admin.lua index c7c139bc..9155121d 100755 --- a/mods/mff/mff_pclasses/admin.lua +++ b/mods/mff/mff_pclasses/admin.lua @@ -7,8 +7,10 @@ -- pclasses.api.register_class("admin", { - on_assigned = function(pname) - minetest.chat_send_player(pname, "Hello admin.") + on_assigned = function(pname, inform) + if inform then + minetest.chat_send_player(pname, "Hello admin.") + end end, on_unassigned = function(pname) end, diff --git a/mods/mff/mff_pclasses/hunter.lua b/mods/mff/mff_pclasses/hunter.lua index 702df905..1e885854 100755 --- a/mods/mff/mff_pclasses/hunter.lua +++ b/mods/mff/mff_pclasses/hunter.lua @@ -7,9 +7,11 @@ -- pclasses.api.register_class("hunter", { - on_assigned = function(pname) - minetest.chat_send_player(pname, "You are now a hunter") - minetest.sound_play("pclasses_full_hunter") + on_assigned = function(pname, inform) + if inform then + minetest.chat_send_player(pname, "You are now a hunter") + minetest.sound_play("pclasses_full_hunter", {to_player=pname, gain=1}) + end local reinforced = pclasses.api.util.does_wear_full_armor(pname, "reinforcedleather", true) if reinforced then sprint.increase_maxstamina(pname, 20) diff --git a/mods/mff/mff_pclasses/warrior.lua b/mods/mff/mff_pclasses/warrior.lua index 8e02506b..3585dcb6 100755 --- a/mods/mff/mff_pclasses/warrior.lua +++ b/mods/mff/mff_pclasses/warrior.lua @@ -7,9 +7,11 @@ -- pclasses.api.register_class("warrior", { - on_assigned = function(pname) - minetest.sound_play("pclasses_full_warrior") - minetest.chat_send_player(pname, "You are now a warrior") + on_assigned = function(pname, inform) + if inform then + minetest.sound_play("pclasses_full_warrior", {to_player=pname, gain=1}) + minetest.chat_send_player(pname, "You are now a warrior") + end sprint.set_maxstamina(pname, 20) minetest.log("action", "[PClasses] Player " .. pname .. " becomes a warrior") end, diff --git a/mods/mff/mff_pclasses/wizard.lua b/mods/mff/mff_pclasses/wizard.lua index d9403595..bcc66bda 100755 --- a/mods/mff/mff_pclasses/wizard.lua +++ b/mods/mff/mff_pclasses/wizard.lua @@ -7,9 +7,11 @@ -- pclasses.api.register_class("wizard", { - on_assigned = function(pname) --- minetest.sound_play("pclasses_full_wizard") - minetest.chat_send_player(pname, "You are now a wizard.") + on_assigned = function(pname, inform) + if inform then + -- minetest.sound_play("pclasses_full_wizard", {to_player=pname, gain=1}) + minetest.chat_send_player(pname, "You are now a wizard.") + end -- Add specs here minetest.log("action", "[PClasses] Player " .. pname .. " becomes a wizard") end, diff --git a/mods/pclasses/adventurer.lua b/mods/pclasses/adventurer.lua index f8f92543..25717867 100755 --- a/mods/pclasses/adventurer.lua +++ b/mods/pclasses/adventurer.lua @@ -8,8 +8,10 @@ pclasses.api.register_class("adventurer", { tile = "wool_white.png", holo_item = "unified_inventory:bag_large" }, - on_assigned = function(pname) - minetest.chat_send_player(pname, "You are now an adventurer") + on_assigned = function(pname, inform) + if inform then + minetest.chat_send_player(pname, "You are now an adventurer") + end end, on_unassigned = function(pname) end diff --git a/mods/pclasses/api.lua b/mods/pclasses/api.lua index e27f5e01..8f091927 100755 --- a/mods/pclasses/api.lua +++ b/mods/pclasses/api.lua @@ -48,13 +48,13 @@ function pclasses.api.get_class_players(cname) end -- Set single player -function pclasses.api.set_player_class(pname, cname) +function pclasses.api.set_player_class(pname, cname, inform) if pclasses.api.get_class_by_name(cname) then if pclasses.api.get_player_class(pname) then pclasses.api.get_class_by_name(pclasses.api.get_player_class(pname)).on_unassigned(pname) end pclasses.data.players[pname] = cname - pclasses.api.get_class_by_name(cname).on_assigned(pname) + pclasses.api.get_class_by_name(cname).on_assigned(pname, inform) local ref = minetest.get_player_by_name(pname) local armor_inv = minetest.get_inventory({type = "detached", name = pname .. "_armor"}) diff --git a/mods/pclasses/nodes.lua b/mods/pclasses/nodes.lua index 2733dbad..62f93f2d 100755 --- a/mods/pclasses/nodes.lua +++ b/mods/pclasses/nodes.lua @@ -48,7 +48,7 @@ minetest.register_entity("pclasses:item", { "class_switch_" .. clicker:get_player_name(), 3600, pclasses.api.set_player_class, - {clicker:get_player_name(), self.class} + {clicker:get_player_name(), self.class, true} ) end, on_activate = function(self, staticdata)