Суть что я бы сделал через еду и менял как будто меняю этажи но у еда своя механика а нет расходов стоит на 0 еду то есть не потребляет процент... И вот думаю можно ли напрямую через мемхак изменить "Нет расходов" на свой например игрок вошел в 1 этаж то меняем на 1 этаж текст а если вышел то пишет "Город" но не могу найди его адрес для игрока
Принятый ответ
//globals
integer array VariousFramesAddresses
constant integer GOLD_TEXTFRAME_ADDRESS_INDEX=1
constant integer LUMBER_TEXTFRAME_ADDRESS_INDEX=2
constant integer UPKEEP_TEXTFRAME_ADDRESS_INDEX=3
constant integer SUPPLY_TEXTFRAME_ADDRESS_INDEX=4
//memhack init
set pGetFrameTextAddress = GameDLL + 0x61C7B0
function GetFrameTextAddress takes string name, integer id returns integer
return CallFastCallWith2Args(pGetFrameTextAddress, GetStringAddress(name), id)
endfunction
function GetResourceBarsAddresses takes nothing returns nothing
local integer a=GetFrameTextAddress("ResourceBarGoldText",0)
if a>0 then
set VariousFramesAddresses[GOLD_TEXTFRAME_ADDRESS_INDEX]=a
endif
set a=GetFrameTextAddress("ResourceBarLumberText",0)
if a>0 then
set VariousFramesAddresses[LUMBER_TEXTFRAME_ADDRESS_INDEX]=a
endif
set a=GetFrameTextAddress("ResourceBarSupplyText",0)
if a>0 then
set VariousFramesAddresses[SUPPLY_TEXTFRAME_ADDRESS_INDEX]=a
endif
set a=GetFrameTextAddress("ResourceBarUpkeepText",0)
if a>0 then
set VariousFramesAddresses[UPKEEP_TEXTFRAME_ADDRESS_INDEX]=a
endif
endfunction
call CallThisCallWith2Args(GameDLL+0x60CA10,VariousFramesAddresses[UPKEEP_TEXTFRAME_ADDRESS_INDEX],GetStringAddress("random str "+I2S(GetRandomInt(1,2000))))
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован pAxsIs
нужна высота - сравниваем Z координаты или что там у вара на высоте
и опять сообщение на экран
для решения подобных проблем мемхак не нужен
SuperTextPrinter
?