返回列表 发帖

把渡枫的mini窗口插件,改为脚本后,提示找不到hp_window,求教

本帖最后由 j 于 2018-8-9 03:20 PM 编辑

北大侠客行MUD,中国最好的MUD
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

  1. function OnPluginSaveState()
  2.         --Note("OnPluginSaveState")
  3.    -- save window current location for next time  
  4.    SetVariable("enabled", tostring (GetPluginInfo (GetPluginID(), 17)))
  5.    movewindow.save_state(hp_win)
  6.    movewindow.save_state(skill_win)
  7.    
  8.    --SetVariable("actorname", actorname)
  9. end --  OnPluginSaveState
复制代码


问题应该出在这里,我不引用这个函数,HP窗口能显示,需要执行安装函数就出来了
附件: 您需要登录才可以下载或查看附件。没有帐号?注册

TOP

这个是窗口初始化函数,你可以把它放到你的脚本的最前面来初始化

TOP

mush的插件是会针对每个插件保留状态信息的
脚本里如何保留这些信息我没有研究过

TOP

应该是找到问题了,把这段代码中的局部变量改成全局变量,问题解决了
  1. function OnPluginInstall ()
  2.         --Note("OnPluginInstall")
  3.        
  4.         WindowCreate (hp_win, 0, 0, hp_win_width, hp_win_height, miniwin.pos_bottom_left, 0, 0x000010)
  5. local hp_win_info = movewindow.install (hp_win, miniwin.pos_bottom_left, miniwin.create_absolute_location, true)
  6.         WindowCreate(hp_win, hp_win_info.window_left, hp_win_info.window_top, hp_win_width, hp_win_height, hp_win_info.window_mode, hp_win_info.window_flags, 0x000010)
  7.         movewindow.add_drag_handler (hp_win, 0, 0, hp_win_width, 30)
  8.         WindowFont (hp_win, FONT_NAME, "Arial", FONT_SIZE)
  9.        
  10.         WindowCreate (skill_win, 0, 0, skill_win_width, skill_win_height, miniwin.pos_top_left, 0, 0x000010)
  11. local skill_win_info = movewindow.install (skill_win, miniwin.pos_top_left, miniwin.create_absolute_location, true)
  12.         WindowCreate(skill_win, skill_win_info.window_left, skill_win_info.window_top, hp_win_width, hp_win_height, skill_win_info.window_mode, skill_win_info.window_flags, 0x000010)
  13.         movewindow.add_drag_handler (skill_win, 0, 0, skill_win_width, 30)
  14.         WindowFont (skill_win, FONT_NAME, "Arial", FONT_SIZE)
  15.        
  16. end
复制代码


附件: 您需要登录才可以下载或查看附件。没有帐号?注册

TOP

本帖最后由 j 于 2018-8-25 03:33 PM 编辑

研究了一下movewindows.lua,觉得是不是把这个临时变量存成mush的变量,效果会不会更好?
SetVariable("hp_win_info",hp_win_info)
SetVariable("skill_win_info",skill_win_info)
这样改了不行,不能用

TOP

在考虑只是开窗口,那就把触发这一块拿出来,单独弄个脚本,开窗的那部分还用插件形式,不知道这样行不行,找时间试试

TOP

返回列表