Jump to content
Korean Random

Динамические макросы в Python


Recommended Posts

 

а конструкция импорта модуля из папки типа

import folder.subfolder_py_file
сработает?

 

не проверял, но по идее можно сделать, если не работает

 

Не работает, если я правильно понял принцип:

file1.py

file2.py

В file1.py пишем import file2.py. Теперь в file1.py можно использовать код из file2.py

Так ведь?

 

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

Link to comment
Short link
Share on other sites

вы это про что? если про py_macro то просто в папку кладете файл и все, никуда его прописывать не надо, он и так будет импортирован

Link to comment
Short link
Share on other sites

вы это про что? если про py_macro то просто в папку кладете файл и все, никуда его прописывать не надо, он и так будет импортирован

Опишу на своем примере.

Есть основной файл скрипта TeamHP.py и файл, где считается свой дамаг myDamage.py:

*****
def myDamage():
    damage = 0
    for key, value in battle_info.damage_log.items():
        damage = damage + value['damage']
    return damage
Пытаюсь конечное значение из myDamage.py отправить в основной файл, вписывая myDamage() - не выходит.

Поэтому и спросил про импорты.

Link to comment
Short link
Share on other sites

Можно примерно такие, как в этом моде:
post-7590-0-25739000-1464857565.png
 Я изначально что-то типо этого и хотел

 

Не шрифтом, но картинками:

 

c0075e256cf0.png

 

Код:

В конце первого сообщения в теме

 

Пути до изображений вида:

<img src='cfg://NDO/img/fragCorrelation/frame_HP.png' width='610' height='32'>

В конфиге корректируем под расположение своего конфига.

 

Не стал заморачиваться и рисовать все 30 полос на каждые 3,33 процента; добавил 20 - 5%

UPD: Подкорректировал, добавил более менее вменяемые стрелки.

Edited by night_dragon_on
  • Upvote 2
Link to comment
Short link
Share on other sites

Не работает, если я правильно понял принцип:

file1.py

file2.py

В file1.py пишем import file2.py. Теперь в file1.py можно использовать код из file2.py

Так ведь?

 

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

Я об импорте модуля из папки

folder/file1.py

file2.py

 

В file2.py пишем import folder.file1

Для такой конструкции нужен файл __init__.py в folder, можно пустой

Я не проверял, работает ли в xvm

Link to comment
Short link
Share on other sites

Я об импорте модуля из папки

folder/file1.py

file2.py

 

В file2.py пишем import folder.file1

Для такой конструкции нужен файл __init__.py в folder, можно пустой

 

Я не проверял, работает ли в xvm

Понял. Спасибо за разъяснение.

Проверил - не работает. Перестает грузиться скрипт, если вписать в него import folder.file1.

Link to comment
Short link
Share on other sites

 

 

Кстати, поддиректории тоже не поддерживаются сейчас, чтобы исключить конфликты экспорта в разных папках. Так что рекомендую делать префикс в названии файлов для своих макросов.
Link to comment
Short link
Share on other sites

@sirmax,призываю тебя Всемогущий! :)  
почитай наши мучения с дебаг панелью и подскажи всё таки как получить заветные данные ..
оченно надо... 
и до кучи, таймер боя тоже расковырять бы и отконфигурировать досмерти)) 

Link to comment
Short link
Share on other sites

Встроил в панель динамический подсчет оставшегося урона до получения основного калибра и расчет процента нанесенного ХП. За код расчета нанесенного урона спасибо Ekspoint`у.
post-7590-0-41565100-1465079397_thumb.png
TeamHPv2.zip
* Обновил *py файл - упрощена формула для расчета основного калибра.
 
Еще не разбирался с тем, как перехватить событие при повреждении союзника прямым выстрелом, что бы выводить сообщение о невозможности получить основной калибр.

Плавающая галочка в низу панели показывает перевес по очкам прочности, чем она дальше от центра, тем сильнее перевес по ХП в ту или иную сторону. За пример реализации спасибо Серычу. Хорошо бы ее заменить на какой-нибудь другой символ, но это пока лучшее, что пришло в голову.
 
Есть косяк с кодом расчета своего урона, его значения иногда не совпадают с хит-логом XVM. Может кто понимающий подскажет, что нужно изменить в расчетах.
Пока нет импортов модулей из папок, пришлось запихать расчет урона в основной файл, хорошо было бы вынести его в отдельный, что бы не захламлять основной.

Edited by neLeax
  • Upvote 4
Link to comment
Short link
Share on other sites

@neLeax, ещё бы battleType учитывать для основного калибра :)

battleType учитывается, основной калибр будет выводится только в случайных боях. Ты ведь про это?
Edited by neLeax
Link to comment
Short link
Share on other sites

battleType учитывается, основной калибр будет выводится только в случайных боях. Ты ведь про это?

я там все это уже сделал, только в случайном бою работает

и да, кстати, не проще разве все global просто вписать в class?

Link to comment
Short link
Share on other sites

battleType учитывается, основной калибр будет выводится только в случайных боях. Ты ведь про это?

Хз куда я смотрел когда искал его... Ну всё, в топку мод TeamHP :) Только палки поменяю на ровные.

 

Upd. Ещё бы за счёт XMQP получать инфу за пределами отрисовки :)

Edited by BuSH
Link to comment
Short link
Share on other sites

Upd. Ещё бы за счёт XMQP получать инфу за пределами отрисовки :)

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

Link to comment
Short link
Share on other sites

 

 

Ну всё, в топку мод TeamHP :)

это всё конечно хорошо, но такой вопрос при очередном обновлении игры все py_macro отвалятся? и что будет с XVM если засунуть не рабочий скрипт? И кто будет обновлять если вдруг скрипты упадут? ведь в дефолт его всё равно макс не пустит.

Link to comment
Short link
Share on other sites

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...