Doojka 0 Posted January 18, 2015 Привет всем! Недавно решил попробывать написать мод для танков, знаю PHP, C#, Java. Но вот с питоном работал всего пару раз, и с основами, здесь на форуме нашел нужный кодик чтобы отправлять сообщения в центр уведомлений, но вот вопрос как обращятся к функции в нужное время? Вот сам код: import BigWorld from gui import SystemMessages from Account import Account link = Account.onBecomePlayer def _First(self): link(self) msg = '<font color="#cc9933"><b>Hello</b></font>' type = SystemMessages.SM_TYPE.Warning SystemMessages.pushMessage(msg, type) Account.onBecomePlayer = link Account.onBecomePlayer = _First Как я понял то Account.onBecomePlayer отвечает за загрузку игрока в игре, то есть после того как игрок загрузился в ангаре мы выполняем функцию, в других языках это можно делать условиями, можно ли это делать тут? И как выполнить функцию передавая в нее аргументы? пробывал так: def _First(self, msg): link(self) type = SystemMessages.SM_TYPE.Warning SystemMessages.pushMessage(msg, type) Account.onBecomePlayer = link Account.onBecomePlayer = _First('message') Но ничего так и не получилось. И еще один вопрос, как работать с модальными окнами, как их создавать? Спасибо! Quote Share this post Link to post Short link Share on other sites
BossBox 14 #244790 Posted January 18, 2015 Как я понял то Account.onBecomePlayer отвечает за загрузку игрока в игре, то есть после того как игрок загрузился в ангаре мы выполняем функцию, в других языках это можно делать условиями, можно ли это делать тут? И как выполнить функцию передавая в нее аргументы? пробывал так: def _First(self, msg): link(self) type = SystemMessages.SM_TYPE.Warning SystemMessages.pushMessage(msg, type) Account.onBecomePlayer = link Account.onBecomePlayer = _First('message') Но ничего так и не получилось. def _First(msg): SystemMessages.pushMessage(msg, SystemMessages.SM_TYPE.Warning) def new_onBecomePlayer(self): old_onBecomePlayer(self) _First('message') old_onBecomePlayer = Account.onBecomePlayer Account.onBecomePlayer = new_onBecomePlayer 1 Quote Share this post Link to post Short link Share on other sites
Doojka 0 #244898 Posted January 18, 2015 def _First(msg): SystemMessages.pushMessage(msg, SystemMessages.SM_TYPE.Warning) def new_onBecomePlayer(self): old_onBecomePlayer(self) _First('message') old_onBecomePlayer = Account.onBecomePlayer Account.onBecomePlayer = new_onBecomePlayer Спасибо, а можете помочь? Поделится ссылочками на уроки или что-то подобное, буду очень благодарен. Quote Share this post Link to post Short link Share on other sites
BossBox 14 #244901 Posted January 18, 2015 Смотри на форуме, тут уже не мало таких тем создавали с таким вопросом. Quote Share this post Link to post Short link Share on other sites
Uti-Puti 344 #244905 Posted January 18, 2015 Спасибо, а можете помочь? Поделится ссылочками на уроки или что-то подобное, буду очень благодарен. А и нету никаких уроков. Лучший способ получать инфу - читать форум) Quote Share this post Link to post Short link Share on other sites
Dno__Dna_Na_Dne__Dna 2 #269520 Posted May 10, 2015 Ребзи, хелпаните плз. def _First(msg): SystemMessages.pushMessage(msg, SystemMessages.SM_TYPE.Warning) def new_onBecomePlayer(self): old_onBecomePlayer(self) _First('message') old_onBecomePlayer = Account.onBecomePlayer Account.onBecomePlayer = new_onBecomePlayer А именно мне не понятно... old_onBecomePlayer = Account.onBecomePlayerAccount.onBecomePlayer = new_onBecomePlayer вот этот обмен. Когда пытаюсь проверить, что передается (присваивается),то пишет несвязанный метод... почему это пишет мне понятно. Но вот как посмотреть, что передается не понятно. Quote Share this post Link to post Short link Share on other sites
Ololosha 13 #270448 Posted May 13, 2015 Когда пытаюсь проверить, что передается (присваивается),то пишет несвязанный метод... почему это пишет мне понятно. Но вот как посмотреть, что передается не понятно. Каким образом ты пытаешься проверить? Неясно, что ты ожидаешь в результате такого "просмотра" увидеть? А вообще передаётся указатель. Quote Share this post Link to post Short link Share on other sites
Dno__Dna_Na_Dne__Dna 2 #270491 Posted May 14, 2015 (edited) Каким образом ты пытаешься проверить? Неясно, что ты ожидаешь в результате такого "просмотра" увидеть? А вообще передаётся указатель. Ура! хоть кто-то есть живой. Пытался следующим образом писал print Account.onBecomePlayer Я хотел увидеть, что-то типо выполненной функции. Чтобы понять каким образом работать с картошкиными исходниками. Edited May 14, 2015 by Dno__Dna_Na_Dne__Dna Quote Share this post Link to post Short link Share on other sites
Ololosha 13 #270524 Posted May 14, 2015 (edited) Я хотел увидеть, что-то типо выполненной функции. Чтобы увидеть результат выполненной функции, должна быть вызвана функция. А Account.onBecomePlayer, судя по всему, метод, а не функция. Чтобы получить информацию по исходникам картошки проше всего смотреть на сами исходники игры или бигворлда. Ещё есть полезная функция dir() Edited May 14, 2015 by Ololosha Quote Share this post Link to post Short link Share on other sites