Jump to content
Korean Random

NemesiS

User
  • Content Count

    10
  • Joined

Community Reputation

0 Noob

Contacts

  • Nick
    NemesiS

Recent Profile Visitors

754 profile views
  1. Да в общий чат писать не получается, поэтому и ошибок нет. message = 'Жопа!' common_controller.sendMessage(message.encode('utf-8')) Выдает кракозябры. message = 'Жопа!'.encode('utf-8') common_controller.sendMessage(message) тоже кракозябры. Закодировать тоже не вариант, текст в конфиге хочу хранить. И еще клиент выдает что то типа "Message suspended for 0,5 sec" когда посылаю первый раз, со второго раза посылается.
  2. Делаю так: channelID = chatManager.battleTeamChannelID if channelID is not 0: BigWorld.player().broadcast(channelID, 'Hello') не получаю никаких ошибок, но и сообщение тоже не вылазит. И еще вроде кириллицей шлется как то по другому? И как написать в общий чат?
  3. Точно спасибо. И еще вопрос, если я меняю значения с: symbol = _S_NAME.ALLY_TEAM_SPAWN container = _C_NAME.TEAM_POINTS На: symbol = _S_NAME._TUTORIAL_TARGET container = _C_NAME.ICONS Получаю ошибку: Exception: invokePy2As - Failed to invoke method.
  4. Если я делаю так: MinimapapEntryF3 = 0 entryIDF3 = 0 def new_handleKeyT2Makct(self, isDown, key, mods): HandleTheKey(self, isDown, key, mods) if key == pa.Key_T3 and mods == 0 and isDown: battle = g_appLoader.getDefBattleApp() if battle: if pa.TyTest == 0: MinimapapEntryF3 = g_appLoader.getDefBattleApp().containerManager.getContainer(ViewTypes.VIEW).getView().components['minimap'] if MinimapapEntryF3 is not None: symbol = _S_NAME.ALLY_TEAM_SPAWN #_S_NAME.ALLY_TEAM_SPAWN container = _C_NAME.TEAM_POINTS #_C_NAME.ALIVE_VEHICLES matrix = Math.Matrix() vector = -77.2736, 21.9409, -22.9597 matrix.setTranslate(vector) entryIDF3 = MinimapapEntryF3.addEntry(symbol, _C_NAME.TEAM_POINTS, matrix=matrix, active=True) if entryIDF3: MinimapapEntryF3.invoke(entryIDF3, 'setPointNumber', 5) SoundGroups.g_instance.playSound2D(settings.MINIMAP_ATTENTION_SOUND_ID) print 'add entry OK' pa.TyTest = 1 return True if pa.TyTest == 1: if MinimapapEntryF3 is not None: pa.TyTest = 0 MinimapapEntryF3.delEntry(entryIDF3) print 'del entry' return True получаю ошибку: UnboundLocalError: local variable 'MinimapapEntryF3' referenced before assignment Точка ставится нормально, но если пытаюсь ее удалить вылазит эта ошибка. Даже если сделать так: MinimapapEntryF3 = g_appLoader.getDefBattleApp().containerManager.getContainer(ViewTypes.VIEW).getView().components['minimap'] MinimapapEntryF3.delEntry(entryIDF3) все равно пишет: UnboundLocalError: local variable 'MinimapapEntryF3' referenced before assignment
  5. Я понял уже из объявления: def addEntry(self, symbol, container, matrix=None, active=False, transformProps=settings.TRANSFORM_FLAG.DEFAULT): entryID = self.__component.addEntry(symbol, container, matrix, active, transformProps) if entryID: self.__ids.add(entryID) return entryID Исправил на: _entry = minimap.addEntry(symbol, container, matrix, active) minimap.invoke(_entry, ['setVehicleInfo', vehicleID, classTag, vName, entryName, 'enemySPG']) Но в логе все равно получаю ошибку: AssertionError: Entry is not added by given ID Не буду ходить вокруг да около, я пытаюсь показать на карте стреляющего: def MyShowTracer(self, shooterID, shotID, isRicochet, effectsIndex, refStartPoint, velocity, gravity, maxShotDist): global MyBuffA1 if not BigWorld.player().arena.vehicles[BigWorld.player().playerVehicleID]['isAlive']: ShowPlTracer(self, shooterID, shotID, isRicochet, effectsIndex, refStartPoint, velocity, gravity, maxShotDist) else: startPoint = refStartPoint shooter = BigWorld.entity(shooterID) if shooter is not None and shooter.isStarted: gunMatrix = Math.Matrix(shooter.appearance.compoundModel.node('HP_gunFire')) gunFirePos = gunMatrix.translation if cameras.isPointOnScreen(gunFirePos): startPoint = gunFirePos # replayCtrl = BattleReplay.g_replayCtrl if (gunFirePos - refStartPoint).length > 50.0 and (gunFirePos - BigWorld.camera().position).length < 50.0: # and replayCtrl.isPlaying: velocity = velocity.length * gunMatrix.applyVector((0, 0, 1)) effectsIndex = max(effectsIndex, 10) effectsIndex = min(effectsIndex + 2, 19) effectsDescr = vehicles.g_cache.shotEffects[effectsIndex] shooter2ID = self.playerVehicleID == shooterID # self.__projectileMover.add(shotID, effectsDescr, gravity, refStartPoint, velocity, startPoint, maxShotDist, shooterID, BigWorld.camera().position) ProjMove = ProjectileMover.ProjectileMover() ProjMove.add(shotID, effectsDescr, gravity, refStartPoint, velocity, startPoint, maxShotDist, shooter2ID, BigWorld.camera().position) # if isRicochet: # self.__projectileMover.hold(shotID) if self.arena.vehicles[shooterID]['team'] != self.team: if shooter is not None: minimap = g_appLoader.getDefBattleApp().containerManager.getContainer(ViewTypes.VIEW).getView().components['minimap'] _entry = minimap.getPlugin('vehicles')._entries.get(shooterID) symbol = ENTRY_SYMBOL_NAME.VEHICLE container = 'vehicles' MathMatrix = Math.Matrix() MathMatrix.setTranslate((0, 0, 0)) MathMatrix2 = Math.Matrix() MathMatrix2.setTranslate(Math.Matrix(MathMatrix).applyPoint(refStartPoint)) _entry = minimap.addEntry(symbol, container, MathMatrix2, True) minimap.invoke(_entry, ['setVehicleInfo', shooterID, VEHICLE_CLASS_NAME.SPG, 'vName Test', 'entryName test', 'enemySPG']) return Конечно я туплю потому что все делаю интуитивно от балды и пока не въехал что, откуда и куда.
  6. Да не стать мне великим мододелом, я и не стремлюсь, просто погода хреновая и заняться нечем, да и разве на этом заработать много можно? Ладно разберусь как нибудь Не работает, пишет: AttributeError: 'int' object has no attribute 'getID'
  7. Спасибо, да я решил немного python поучить, программирую на C++ в основном, а так и учить веселей, и стимул какой никакой. Сам не люблю чужой код, просто с документацией в WOT негусто, если есть где что почитать буду рад ссылочке. Спасибо за пример, только вот откуда взять переменные: symbol, container, matrix, active, classTag? Покопался в исходниках клиента, нашел только объявления функций addEntry, invoke в component.py Как узнать что да как если оно все не документировано и нет примеров использования? Поделитесь опытом пожалуйста.
  8. Ковыряю старые исходники, вроде начинаю въезжать, разобрался как загружать и показывать текстуры на поле боя, но никак не могу понять как что нибудь отобразить на мини карте, мне нужно поставить хотя бы точку, чтобы отобразить положение танка, проковырял все, перерыл все форумы, так ничего из нового и не могу найти, раньше как понял все было просто, что то типа: ... MinimapapEntry = g_appLoader.getDefBattleApp().minimap._Minimap__ownUI.addEntry(MathMatrix2, MyInt2) ... а теперь, как то, что то, через какую то большую же это все делается, что ли типа: ... g_appLoader.getDefBattleApp().containerManager.getContainer(ViewTypes.VIEW).getView().components['minimap']._MinimapComponent__component.entryInvoke(MinimapapEntry, ('init', ['ally','teamKiller','SPG',''])) ... Голова пухнет, получается нифига нерабочий код, потому что было очень много изменений. Никак не могу понять логику работы, хотя перекопал все исходники клиента но так и не нашел где и как работает мини карта. вот кусок нерабочего кода: Поделитесь опытом, как поставить а затем удалить точку на мини карте. И еще одно, если я делаю так: shooterID = g_appLoader.getDefBattleApp().containerManager.getContainer(ViewTypes.VIEW).getView().components['minimap']._Minimap__enemyEntries в логах получаю ошибку: AttributeError: 'ClassicMinimapComponent' object has no attribute '_Minimap__enemyEntries'
  9. Наткнулся на эту программку совсем недавно, удивляюсь как в ней все просто, написал, скомпилил вкинул в клиент и все работает! Просто как все гениальное. Автору огромное спасибо, продолжайте в том же духе.
  10. Компилирую старый исходник для WOT9.0, запуская его в игре получаю ошибку в "python.log" No module named WindowsManager. С чего начать копать? в исходнике есть строки: Могут быть и другие косяки с импортом, до этого программировал на С++, помогите въехать в создание модов.
×
×
  • Create New...