Jump to content
Korean Random

Как отловить сообщения над миникартой


SV43

Recommended Posts

Доброе время суток, задался таким вопросом, отключить уведомление о уничтоженных игроках, над миникартой.

Подскажите где искать?

 

Link to comment
Short link
Share on other sites

Это через ХУМ, но я так понимаю нужно в питоне реализовать?

 

elements.xc

// Kill-log
        // Килл-лог (лог убитых)
        {
            "$delay": 100,
            // Kill-log
            // Килл-лог (лог убитых)
            "playerMessangersPanel": {
                "_alpha": 0
            }
        },
Edited by Yusha
  • Upvote 1
  • Downvote 3
Link to comment
Short link
Share on other sites

Это через ХУМ, но я так понимаю нужно в питоне реализовать?

 

elements.xc

// Kill-log
        // Килл-лог (лог убитых)
        {
            "$delay": 100,
            // Kill-log
            // Килл-лог (лог убитых)
            "playerMessangersPanel": {
                "_alpha": 0
            }
        },

 

слушай, а их можно сдвинуть через xvm например по центру в низу поставить
Link to comment
Short link
Share on other sites

слушай, а их можно сдвинуть через xvm например по центру в низу поставить

через хвм хз, но по стандарту нет, есть только 3 позиции для этих сообщений

Link to comment
Short link
Share on other sites

 

Это через ХУМ, но я так понимаю нужно в питоне реализовать?

 

elements.xc

// Kill-log
        // Килл-лог (лог убитых)
        {
            "$delay": 100,
            // Kill-log
            // Килл-лог (лог убитых)
            "playerMessangersPanel": {
                "_alpha": 0
            }
        },

Суть такова, что их вообще убрать нужно, понятно что надо будет ковырять в питоне а не в xvm

Начинай копать с gui.battle_control.battle_msgs_ctrl

 

К примеру уничтожение танка: BattleMessagesPlayer.showVehicleKilledMessage

Поиск не дал результатов. Или я походу не там смотрю.

Link to comment
Short link
Share on other sites

Чтобы корректно "вырезать" текстовые сообщения достаточно убрать вызов onShowPlayerMessageByCode в showVehicleKilledMessage

Если тупо в лоб, то:
def showVehicleKilledMessage(self, avatar, targetID, attackerID, equipmentID, reason):
       return

Но тогда отвалится голосовое уведомление при уничтожении тобою противника ;-)

Edited by ShuraBB
  • Upvote 1
Link to comment
Short link
Share on other sites

Чтобы корректно "вырезать" текстовые сообщения достаточно убрать вызов onShowPlayerMessageByCode в showVehicleKilledMessage

 

Если тупо в лоб, то:

def showVehicleKilledMessage(self, avatar, targetID, attackerID, equipmentID, reason):

return

 

Но тогда отвалится голосовое уведомление при уничтожении тобою противника ;-)

это же все легко делается

Вообще тогда еще проще захукать onShowPlayerMessageByCode

Edited by Ekspoint
  • Upvote 1
  • Downvote 1
Link to comment
Short link
Share on other sites

>Вообще тогда еще проще захукать onShowPlayerMessageByCode
В принципе да, но его-же использует и showVehicleDamageInfo, так что тоже могут всплыть грабли если в лоб ;-)

Link to comment
Short link
Share on other sites

это же все легко делается

Вообще тогда еще проще захукать onShowPlayerMessageByCode

Спасибо, так и сделал. Вроде работает. Буду дальше тестировать.

Link to comment
Short link
Share on other sites

    def showVehicleKilledMessage(self, avatar, targetID, attackerID, equipmentID, reason):
        try:
            playerVehicleID = avatar.playerVehicleID
        except AttributeError:
            return

        isMyVehicle = targetID == playerVehicleID
        isObservedVehicle = not avatar.isVehicleAlive and targetID == avatar.inputHandler.ctrl.curVehicleID
        if isMyVehicle or isObservedVehicle:
            return
        elif targetID == attackerID and self.__battleCtx.isObserver(targetID):
            return
        else:
            code, postfix, sound = self.__getKillInfo(avatar, targetID, attackerID, equipmentID, reason)
            if sound is not None:
                avatar.soundNotifications.play(sound)

            self.onShowPlayerMessageByCode(code, postfix, targetID, attackerID, equipmentID)
            return

По сути закоментил эту строку self.onShowPlayerMessageByCode(code, postfix, targetID, attackerID, equipmentID)

Подскажите, как вы отлавливаите то или иное событие, как понять что за что отвечает. Понятно не могу.

Link to comment
Short link
Share on other sites

  • 1 year later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...