If you want to put a message into the chat as the weapon sheaths you can do it like this:
Lua Code:
--preHook the original function
ZO_PreHook("TogglePlayerWield", function()
d("TogglePlayerWield was used")
return false -- reutn false to run original function code of TogglePlayerWield afterwards!
end
You can use the function IsUnitInCombat("player") to check if you ar ein combat and change the message shown in the chat accordingly.
In combat: Weapon drawn, Out of combat: weapon sheath
-> Maybe out of combat will be always false within a preHook to TogglePlayerWield as you run your code before the weapon gets sheathed and you might be in combat at this time too.
For the weapon draw stuff you could register an event for "getting into combat" I guess:
EVENT_PLAYER_COMBAT_STATE