From b345a6d783bf878c25c1ca66b7f8927165b52d1d Mon Sep 17 00:00:00 2001 From: Eduardo Bart Date: Thu, 3 Nov 2011 07:59:11 -0200 Subject: [PATCH] create in game interface panels and renable about and options windows --- modules/about/about.lua | 19 +++ modules/about/about.otmod | 13 ++ modules/about/about.otui | 61 +++++++++ .../core_styles/images/interface_panel.png | Bin 0 -> 38318 bytes modules/core_styles/images/map_panel.png | Bin 0 -> 38331 bytes modules/core_styles/images/panel_rounded.png | Bin 36086 -> 0 bytes modules/core_styles/images/top_panel.png | Bin 6436 -> 4891 bytes modules/core_styles/styles/panels.otui | 19 +-- modules/entergame/characterlist.lua | 5 +- modules/entergame/entergame.lua | 1 + modules/game/game.lua | 27 ++-- modules/game/game.otmod | 4 +- modules/game/textmessage.lua | 48 ++++---- modules/game/ui/gameinterface.otui | 23 +++- modules/options/options.lua | 19 +++ modules/options/options.otmod | 13 ++ modules/options/options.otui | 116 ++++++++++++++++++ modules/{game/skill.lua => skills/skills.lua} | 15 +-- modules/skills/skills.otmod | 0 .../skillwindow.otui => skills/skills.otui} | 2 +- modules/topmenu/topmenu.otui | 21 +++- modules/{game/vip.lua => viplist/viplist.lua} | 10 +- modules/viplist/viplist.otmod | 0 .../vipwindow.otui => viplist/viplist.otui} | 0 src/framework/luascript/luafunctions.cpp | 1 + src/framework/ui/uiwidget.cpp | 15 +++ src/framework/ui/uiwidget.h | 3 + src/otclient/otclient.cpp | 2 +- src/otclient/ui/uimap.cpp | 30 +++-- src/otclient/ui/uimap.h | 3 + 30 files changed, 400 insertions(+), 70 deletions(-) create mode 100644 modules/about/about.lua create mode 100644 modules/about/about.otmod create mode 100644 modules/about/about.otui create mode 100644 modules/core_styles/images/interface_panel.png create mode 100644 modules/core_styles/images/map_panel.png delete mode 100644 modules/core_styles/images/panel_rounded.png create mode 100644 modules/options/options.lua create mode 100644 modules/options/options.otmod create mode 100644 modules/options/options.otui rename modules/{game/skill.lua => skills/skills.lua} (97%) create mode 100644 modules/skills/skills.otmod rename modules/{game/ui/skillwindow.otui => skills/skills.otui} (97%) rename modules/{game/vip.lua => viplist/viplist.lua} (98%) create mode 100644 modules/viplist/viplist.otmod rename modules/{game/ui/vipwindow.otui => viplist/viplist.otui} (100%) diff --git a/modules/about/about.lua b/modules/about/about.lua new file mode 100644 index 00000000..e25fa8af --- /dev/null +++ b/modules/about/about.lua @@ -0,0 +1,19 @@ +About = {} + +-- private variables +local about + +-- public functions +function About.create() + about = UI.loadAndDisplay("/about/about.otui") + UI.root:lockChild(about) +end + +function About.destroy() + about:destroy() + about = nil +end + +function About.openWebpage() + displayErrorBox("Error", "Not implemented yet") +end \ No newline at end of file diff --git a/modules/about/about.otmod b/modules/about/about.otmod new file mode 100644 index 00000000..7c1a14c4 --- /dev/null +++ b/modules/about/about.otmod @@ -0,0 +1,13 @@ +Module + name: about + description: Create the about window + author: OTClient team + website: https://github.com/edubart/otclient + autoLoad: true + dependencies: + - core + + onLoad: | + require 'about' + return true + diff --git a/modules/about/about.otui b/modules/about/about.otui new file mode 100644 index 00000000..a92e93bc --- /dev/null +++ b/modules/about/about.otui @@ -0,0 +1,61 @@ +MainWindow + id: about + title: Info + size: 244 221 + + FlatPanel + size: 208 129 + anchors.left: parent.left + anchors.top: parent.top + margin.top: 32 + margin.left: 18 + + Label + align: center + text: |- + OTClient + Version 0.2.0 + Created by edubart + anchors.horizontalCenter: parent.horizontalCenter + anchors.top: parent.top + margin.top: 20 + + HorizontalSeparator + size: 190 2 + anchors.left: parent.left + anchors.top: parent.top + margin.top: 83 + margin.left: 9 + + Label + text: Official Website + anchors.left: parent.left + anchors.bottom: parent.bottom + margin.bottom: 14 + margin.left: 9 + + Button + text: Github Page + size: 88 24 + anchors.right: parent.right + anchors.bottom: parent.bottom + margin.bottom: 9 + margin.right: 9 + onClick: About.openWebpage() + + HorizontalSeparator + anchors.left: parent.left + anchors.right: parent.right + anchors.bottom: parent.bottom + margin.bottom: 40 + margin.left: 13 + margin.right: 13 + + Button + text: Ok + size: 46 24 + anchors.left: parent.left + anchors.top: parent.top + margin.top: 191 + margin.left: 188 + onClick: About.destroy() diff --git a/modules/core_styles/images/interface_panel.png b/modules/core_styles/images/interface_panel.png new file mode 100644 index 0000000000000000000000000000000000000000..7943a0d0eb29e0bc677519ec2129baa9aa483204 GIT binary patch literal 38318 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 delta 6371 zcmV<97#!!DCZsZu7YZT>1^@s6uwe)9ks&__0RsR!zYBNMk!UM_7<)-XK~#9!?OnmH zBQb6yIlcx+4#_FETyqZc0s9U4{||{+IY^|6l-l;21$G1M7#PgFd3Lv2qR3*gDC>Xy z<$s{60)eQhh>JiW;x2%Sh|7GLh={1F@N2#|e)4>un4JG_^YaRwzsI_UVBfc0MuGfn zc{$ztb}tc8g`6LMtmBE7Vm+76KZ-dg^+h+*HGUO=W6q1x<>UACoU*190)ZpP0mXXG zH6PG5_RD?6_H)@~et16UW8mxgeog>#Jf?`~dYGJpZVF|-;~sk4UjY%bJ-^$O=DfwE zSzA}^F~s;4nzlKwiM$!s{N>!OkGhMP%7>TL^~1iNh=^l<+aeSK=+&yu8JRW+sF>}w z6`5mlw5jCxU#=CO+mj+9AD`{%c_GksA1Kl&V>8y(+M8GOvZvx_qxVUBpRG*>G7!+8 zWh{!hnbJ|jMVub`wkLTEd2hS#{}?AU|KujoHnCclHl8gF8n&Mo$1a+48pav(3w|Ik zoBx=%!wh_XZZz@fq~qS+oFZ+e>ZI58mDYftRqMtJXOK=i*3rT=Y|XhH&yhce)04G< z)|{l1$$&#+)n+@&4%xPC?~8B{z1O z=<=6*y%?V#p|{%AX`4TJZ3kz?IN)XT%#FA=WZY1H5&w4bT&K4#)8Ws<*@mERBDS27 zNX|%CoPqfM+0IMn=3o>M_5<8EHTJW{{FDenjtW3oER|`*z<9en`gHGtel#O)JVUHy zJQrvKmZ;$jWR%vk-P2^ELKAx4`Ll{{N3EL9Kncy{7{#Y;ft*fkc#QnF_;hOQG|Kq3 zuP-Bi4L#85S982zLLv*=gnh%M6Hwio)1)Gx0DY>WHvfp2=r7&Q2-Uf$XhwFkdd-Y) z z;aHAhzdz>|Yk`Id*1*8<1(uF6oN{m(mACr#HF85-KdW_ueQj`!$5N@kw0NxjL3{8` z-F8%KTHJr{IES9U{>TZ~97N19TwduBGMeLruf?8xPk7&8)}Y!kAezaH4gp(#FYq3N zyuJ}U!{yD*5{=UiG_HaS8uXrsHoQrc$f_L5gt=H_02YCYMyln;osWsQ-k9Tm-26J- z&@uOhXLyGdAyFgcTqk7ohao`ANhDqP6@>~Y?5L~cRIIrk5xFW&t(qeyqjLdSOXk6R+t$7dhqig?6B%qJ{!a0t$e)?w9-vIp= zL?xtfeG2@V7sb0UCV`U^w1K8dJ_Ud~InG0$kob9H18 zn201!T^4hK1<24a6Nb!lb&;yYYa)6WUZwazqE38y?9=E zpU(n|+h`1bY(mX^{s&HAA>n7+JBQ^F>0619?OFu~mlJ8r*Mwz%PpkWU_)hJUn1np@ zSX4@V6%Xsg;G^cp%K7%qL*lZjKxMU7*Ntchtokl7<0?;3*T1*;F{6Ig=>3FrkWDCR z^V+Jqkk^P!B}UP-0)u}wig9Zr zj0>tlGqgyZfIEzT4Nj>9j?V~BC7kFERB3mmqV74M2sJkz zK1BcD#BR2XA;?R8!?x#`d_zn<4IV8=7>*G3p7Upn@G{pn(nvODU}$^xDzIPB7R ziYov*gAS=LyAVv2$q-;WvQA1O zlr~>`$k9@!%bd4zbKwSWVyYlOGjI@T_!AQc=sv47AHVxmp%v0Gopx{+$ib(Hh~ z!v()=LaI=IXQ>HDNRaA5CZSf;!|-I>Ve9{gRJEP@ygqCiWuKg0s>+?J^ACkfoVmA36HJ?#zc#Y_{`47y*bBUAtV04s!)6&YBD%;lPC5$$hQ#p0tPfPI7 zm4%dC>;N+Ahc-Z!HU%pZXySmtJD`H)G`vjvKr&N>h^y#Riea`Edujqo ziIRX&W`PsLHU|*-*EsKy|BQv z>5X&@sUlm(stbCncAjA&5({5Hj=4@NYhzNO z@LcP^u`GcCoXavB{yY3$d;rUR?Q^E03~f)&j(-QK@1H1_9PlDOfwxcC*7eJh*qYaW zoC?K}Z*Hd=o9_*=PU)5Bdix{%y{09{GwDKU@_7G8YU$m*-XMo#iS?42t?7=Re{v&E z;W!N{*~CgQ0vIO>jQfQ?p@D(dJ9R?BRg9HW{HhHmQl+kQ5ZZpf8AsuWanqy6le#Cl zv7JCS)@TA*mqlf-lp1Xi$Y3>(^l=A&8QE_EB}JFF1}27yB_eHxgsN z%~ttpexQp(OQO=dGN?Rj&5c5yw8J~5Mtz|0*Jt@%i5EvF zT6YE+u1Zpbt6m@L3dHJ|TB&|%?7NqzlKVvVNw%!G7 zG$XR1^;>lzrRx#tqpC3HWm>lC-uOEJ+tPQ~YVfJMD|+AeJ&0?6QK!gzRxp(6YpPv< z!&8c-D97i>A$ZHtyo3Bol^P9^lVHlXo%vC0Se{P0H8_Gd_Hw+p&EKm*a^V+nrV0Fi zFD~&o?noqHFq3DwiD22_lAU}iq!OeEn2CzicGcqM0!hp;pz=;edE*6^!^&RyD7KRd ziis;`<+awdvoC;u9b0TX-*Zvaa{i`6yhOHW8Rs-`D_PPymeXS#s{2HkV@|b|9=VaL=m|6`iVxx*`;z$l zQW)f!8ScIj_;OZ*(gYvsONHG+VO; z`Kd%!yLhF4oL*E<&*9PL$w%Y^GRm{F?IG4EHH(t(1N_(C)-5NZf06|&{OlX}-DaXH zgQ=Ay+tLQ2OAZw2Ef|9SRzoc;aff9{166k=Eu`4*f`v9E;3pTjQ-R&Oo2|Gy#Uvh0 zE6Mmb%j9xial;`9QEG>L(@@TI9 zHquUil(Tw5t`n)MZ<4gU?^aGHdodAtIZ#9*Mf`Nj4Ws|s>$_b^pb?D_MK;Rn1$F|X zIBhiu+_O{k=pRa=j2ipxSHjUrH~4;k!A(IDY1U*pb|lYW?HDo=D$J-BhUTJT3)x7D znS%BbhVQmNrz;otNS19uMWYq^)XhdMvDXuSqAw#z?p+qsf4mzqt*CRhZ(R~Y$7UQfm%)Fz`6w4t=oHG%NaA*aCJ6O>3#k?8sHYH=l!G9odOFbWJr|y5na=p)Q-zj}e@?Jd9<+@@`2-&j zA%lK>3QNu>l@iI7MtiAG8%3*-hlaRlw;{3m_(Q(QLMLRUW5dEu=(zxP-~4hXw?Jc` zsh^P%ku&L1<_EPRdUHx!=d$UGNFb(vSvOMDKuPm-sLcNUTmQ z$aA%~ilp>f2?~y2qjfE565Bym4z$WRLa`6q-ZlwU+zINkwyP@l64Dmi0|}5#ALi?5 zH(n&ClUNwaFP8;x64R!RxK1z1EZj+)ojV^S4#r`L(AE`*ooj~Jq$(sp)rgsYwTL|VnCD3lHS(+pj09Z!fV$=9+J-4_ph_nX|v1e5OfQ4m=29907E{hhhuUFo34d& z6*&ajUY$suVvF6q2s&X!1NIAT)^N2#<;W%PLOUZd0S})isJn+5eBB0r^XJAKiM5jz zc9w!|2UiRW4_#xioa+Rhvhl|bed@nvdINbrZoCtec3JMyKopHrTh*7%X1+^-iAdsa z$5mm+rwPvoc0vML1DdM5!vXXC~e@vxEXzw z4fWS%rVjGO_rgfk)ytJ2vj*vT1vrJVIzAHpXj6;8>})sX)Q2}tJAdz9ulGEbyGXEG z$i1o4KnL0tz4^LN5KZYc*+F@vWlLXBa>-rSKP1-uoI7hdvgsy&Kg~$*K+ad{_c-)( zCVC@I@&q0!jFF9@wNvA5;D^(95ww$3KwXRT=<|zny}AV?SDt5OD z5gyKwcxi_Z_QZpXJ#lWeb=bKKhr5V{qTq~rQTruD3qG}NT9ZYgT^F+pu{?bgU~T22 zAfbl0q^i@!qr&=sI92z+TXdd*))R=(>()MI)Q<;nWHD5Ii_6? z_Ow+mDJrURtc#X>pI#iOO0iGS)e!#3sp;6-h-P@Wu>VO4ZZXk5ixC&C6`l`8!NrNg zceSGA=bnu;&rF}R!-7Yy)l;tl6M5$^?m`~BaA7)@8R%Aj+b2)JPkG^Wq5`XzYC^=| zmk+Z2=-t-}BRW*Xjq1!MnDcWx*D*$~RI6BQI-a3S@sx^xBsuS*g(0Smac4j7FtB7KY#H zGpIQ|1SQ&k&OJ~%udbg!uG%^@%X3JUM)N4Sf-I=(MH>sZ{$Gh9oCNb0^&roSxP(vM ztlqGpY9km%)29fDbl9eAv`$1o&s~ouG_sGH&!^IQY~?lQ0riVO8obADLgS+qxgwSn z{xPO%Z?RQCY4HwzGfuyBEtEFz(OYikhn^!lu65Rb{_pYFFT+QI;pylERp9W~>Eh;eUIXAx>ImjD;iuw|lAO>?Y+ zTez~c9C#5yUH;A>MCE0)`FgorI*hL52l9lLeK5q|_+@+X@)V)b6l?JO&Lut?0?H8? zRjlL>h4w*}3#($GD%7E4)l&)Bzuf849F#JDT*`09ZaZdgUGh$CFui{-AajLloXUs2 z&@~+Q{86b2gXl?RSuGg(-TI$0lwFj0jhyQT$95w6c1l!BH+In1a_(I;pCwd}AOdpA zk7r_hs+N2@nfl|VD%m9OsQ_uV3!in3l*BjBm#>Aj%X?nggQKnFCui4Q7al+=^!w(2 zfxEuG&ewUrI^R3ofV{Y_vj$Qf)!6$CTimIrqbt^z!v#JTP~NE%fD367bEjmQpXFT40@|MRIrx5|D)$XlkfW(g^$p z5-104_UQ1g@ui7}cD}}6Sz|;zIhBHxbOoAXCKgX*#AVS~b8rd!xgIUj82EO7axUum zSM2E(oq6Vo(aZ-$=BYWEC>A5}1|wtR-!-tweD{1`nCy%1Jgi@8B4x9Ncn0r}&eDra zf``}b4b6eDb6C<}K20bgG1uD?4!7?mpejo})8($6Kl%$kh5FNP-I0qwrMZ$^4abG8 z^5Z>+c8V6N;+`vES_$e5ME~+aZ~y*x!18}ye_nrH{~unj|M<`U{xb`IUVmQypfCNW lfBx4$2;k4_&+8xb^?&k|E1kU1HNgM?002ovPDHLkV1k1{fj9sF diff --git a/modules/core_styles/styles/panels.otui b/modules/core_styles/styles/panels.otui index 9baaf638..fde10861 100644 --- a/modules/core_styles/styles/panels.otui +++ b/modules/core_styles/styles/panels.otui @@ -1,23 +1,28 @@ Panel < UIWidget phantom: true +RectPanel < UIWidget + image: /core_styles/images/empty_rect.png + FlatPanel < Panel border-image: source: /core_styles/images/panel_flat.png border: 4 TopPanel < Panel - height: 34 + height: 36 image: source: /core_styles/images/top_panel.png repeated: true -RoundedPanel < Panel - background-color: #ffffffdd +InterfacePanel < Panel + focusable: false border-image: - source: /core_styles/images/panel_rounded.png + source: /core_styles/images/interface_panel.png border: 4 - -RectPanel < UIWidget - image: /core_styles/images/empty_rect.png \ No newline at end of file +MapPanel < UIMap + map margin: 4 + border-image: + source: /core_styles/images/map_panel.png + border: 4 \ No newline at end of file diff --git a/modules/entergame/characterlist.lua b/modules/entergame/characterlist.lua index 921d2a3f..49f98714 100644 --- a/modules/entergame/characterlist.lua +++ b/modules/entergame/characterlist.lua @@ -91,12 +91,15 @@ end function CharacterList.destroy() CharacterList.hide() - EnterGame.show() + if not Game.isOnline then + EnterGame.show() + end end function CharacterList.show() if not loadBox then charactersWindow:show() + charactersWindow:focus() end end diff --git a/modules/entergame/entergame.lua b/modules/entergame/entergame.lua index 8407404e..952fcc3c 100644 --- a/modules/entergame/entergame.lua +++ b/modules/entergame/entergame.lua @@ -43,6 +43,7 @@ end function EnterGame.show() enterGame:show() + enterGame:focus() end function EnterGame.hide() diff --git a/modules/game/game.lua b/modules/game/game.lua index 76c826f6..0bc74031 100644 --- a/modules/game/game.lua +++ b/modules/game/game.lua @@ -1,6 +1,4 @@ require 'textmessage' -require 'skill' -require 'vip' -- private functions local function onGameKeyPress(self, keyCode, keyChar, keyboardModifiers) @@ -16,28 +14,37 @@ local function onGameKeyPress(self, keyCode, keyChar, keyboardModifiers) return false end -local function createMainInterface() +-- public functions +function Game.create() Game.gameUi = loadUI('/game/ui/gameinterface.otui', UI.root) Game.gameMapUi = Game.gameUi:getChildById('gameMap') Game.gameUi.onKeyPress = onGameKeyPress - createTextInterface() - createVipWindow() + TextMessage.create() end - -local function destroyMainInterface() +function Game.destroy() if Game.gameUi then Game.gameUi:destroy() Game.gameUi = nil end end --- public functions +function Game.show() + Game.gameUi:show() + Game.gameUi:focus() + Game.gameMapUi:focus() +end + +function Game.hide() + Game.gameUi:hide() +end + +-- hooked events function Game.onLogin() Background.hide() CharacterList.destroyLoadBox() - createMainInterface() + Game.show() end function Game.onLoginError(message) @@ -53,7 +60,7 @@ function Game.onConnectionError(message) end function Game.onLogout() + Game.hide() Background.show() CharacterList.show() - destroyMainInterface() end diff --git a/modules/game/game.otmod b/modules/game/game.otmod index fe0c91bd..c1efc1df 100644 --- a/modules/game/game.otmod +++ b/modules/game/game.otmod @@ -3,7 +3,6 @@ Module description: Create the game interface, where the ingame stuff starts author: OTClient team website: https://github.com/edubart/otclient - version: 0.2 autoLoad: true dependencies: - core @@ -14,4 +13,7 @@ Module onLoad: | require 'game' + require 'textmessage' + Game.create() + Game.hide() return true diff --git a/modules/game/textmessage.lua b/modules/game/textmessage.lua index 275203cc..efc800e5 100644 --- a/modules/game/textmessage.lua +++ b/modules/game/textmessage.lua @@ -1,37 +1,41 @@ -importStyles('/game/ui/textmessage.otui') +TextMessage = {} -local bottomLabelWidget, centerLabelWidget +-- require styles +importStyles '/game/ui/textmessage.otui' +-- private variables +local bottomLabelWidget, centerLabelWidget local messageTypes = { -first = 12, -{ type = 'MessageOrange', color = '#C87832', showOnConsole = true, showOnWindow = false }, -{ type = 'MessageOrange', color = '#C87832', showOnConsole = true, showOnWindow = false }, -{ type = 'MessageRed', color = '#C83200', showOnConsole = true, showOnWindow = true, windowLocation = 'CenterLabel' }, -{ type = 'MessageWhite', color = '#FFFFFF', showOnConsole = true, showOnWindow = true, windowLocation = 'CenterLabel' }, -{ type = 'MessageWhite', color = '#FFFFFF', showOnConsole = true, showOnWindow = true, windowLocation = 'BottomLabel' }, -{ type = 'MessageWhite', color = '#FFFFFF', showOnConsole = true, showOnWindow = true, windowLocation = 'BottomLabel' }, -{ type = 'MessageGreen', color = '#3FBE32', showOnConsole = true, showOnWindow = true, windowLocation = 'CenterLabel' }, -{ type = 'MessageWhite', color = '#FFFFFF', showOnConsole = false, showOnWindow = true, windowLocation = 'BottomLabel' }, -{ type = 'MessageBlue', color = '#3264C8', showOnConsole = true, showOnWindow = false }, -{ type = 'MessageRed', color = '#C83200', showOnConsole = true, showOnWindow = false } + first = 12, + { type = 'MessageOrange', color = '#C87832', showOnConsole = true, showOnWindow = false }, + { type = 'MessageOrange', color = '#C87832', showOnConsole = true, showOnWindow = false }, + { type = 'MessageRed', color = '#C83200', showOnConsole = true, showOnWindow = true, windowLocation = 'CenterLabel' }, + { type = 'MessageWhite', color = '#FFFFFF', showOnConsole = true, showOnWindow = true, windowLocation = 'CenterLabel' }, + { type = 'MessageWhite', color = '#FFFFFF', showOnConsole = true, showOnWindow = true, windowLocation = 'BottomLabel' }, + { type = 'MessageWhite', color = '#FFFFFF', showOnConsole = true, showOnWindow = true, windowLocation = 'BottomLabel' }, + { type = 'MessageGreen', color = '#3FBE32', showOnConsole = true, showOnWindow = true, windowLocation = 'CenterLabel' }, + { type = 'MessageWhite', color = '#FFFFFF', showOnConsole = false, showOnWindow = true, windowLocation = 'BottomLabel' }, + { type = 'MessageBlue', color = '#3264C8', showOnConsole = true, showOnWindow = false }, + { type = 'MessageRed', color = '#C83200', showOnConsole = true, showOnWindow = false } } -function createTextInterface() +-- public functions +function TextMessage.create() bottomLabelWidget = UILabel.create() Game.gameMapUi:addChild(bottomLabelWidget) - + centerLabelWidget = UILabel.create() Game.gameMapUi:addChild(centerLabelWidget) end +-- hooked events function Game.onTextMessage(type, message) - local messageType = messageTypes[type - messageTypes.first] - + if messageType.showOnConsole then -- TODO end - + if messageType.showOnWindow then local label if messageType.windowLocation == 'BottomLabel' then @@ -39,18 +43,16 @@ function Game.onTextMessage(type, message) elseif messageType.windowLocation == 'CenterLabel' then label = centerLabelWidget end - + label:setVisible(true) label:setForegroundColor(messageType.color) label:setText(message) - + label:setStyle(messageType.windowLocation) - + time = #message * 75 scheduleEvent(function() label:setVisible(false) end, time) end - end - diff --git a/modules/game/ui/gameinterface.otui b/modules/game/ui/gameinterface.otui index 619b27a2..b62906f1 100644 --- a/modules/game/ui/gameinterface.otui +++ b/modules/game/ui/gameinterface.otui @@ -2,9 +2,24 @@ UIWidget id: gameRootInterface anchors.fill: parent anchors.top: topMenu.bottom - margin.top: 1 - UIMap + InterfacePanel + id: rightPanel + width: 200 + anchors.right: parent.right + anchors.top: parent.top + anchors.bottom: parent.bottom + + InterfacePanel + id: bottomPanel + height: 140 + anchors.left: parent.left + anchors.right: rightPanel.left + anchors.bottom: parent.bottom + + MapPanel id: gameMap - anchors.fill:parent - margin.right: 200 \ No newline at end of file + anchors.left: parent.left + anchors.right: rightPanel.left + anchors.top: parent.top + anchors.bottom: bottomPanel.top \ No newline at end of file diff --git a/modules/options/options.lua b/modules/options/options.lua new file mode 100644 index 00000000..ade5a6fa --- /dev/null +++ b/modules/options/options.lua @@ -0,0 +1,19 @@ +Options = {} + +-- private variables +local options + +-- public functions +function Options.create() + options = UI.loadAndDisplay("/options/options.otui") + UI.root:lockChild(options) +end + +function Options.destroy() + options:destroy() + options = nil +end + +function Options.openWebpage() + displayErrorBox("Error", "Not implemented yet") +end \ No newline at end of file diff --git a/modules/options/options.otmod b/modules/options/options.otmod new file mode 100644 index 00000000..254ca702 --- /dev/null +++ b/modules/options/options.otmod @@ -0,0 +1,13 @@ +Module + name: options + description: Create the options window + author: OTClient team + website: https://github.com/edubart/otclient + autoLoad: true + dependencies: + - core + + onLoad: | + require 'options' + return true + diff --git a/modules/options/options.otui b/modules/options/options.otui new file mode 100644 index 00000000..d074a9e5 --- /dev/null +++ b/modules/options/options.otui @@ -0,0 +1,116 @@ +MainWindow + id: optionsWindow + title: Options + size: 286 262 + + // general + Button + text: General + anchors.left: parent.left + anchors.top: parent.top + margin.left: 18 + margin.top: 32 + onClick: displayErrorBox("Error", "Not implemented yet") + + Label + text: |- + Change general + game options + anchors.left: prev.right + anchors.top: prev.top + margin.left: 10 + margin.top: -2 + + // graphics + Button + text: Graphics + anchors.left: parent.left + anchors.top: parent.top + margin.left: 18 + margin.top: 65 + onClick: displayErrorBox("Error", "Not implemented yet") + + Label + text: |- + Change graphics and + performance settings + anchors.left: prev.right + anchors.top: prev.top + margin.left: 10 + margin.top: -2 + + // console + Button + text: Console + anchors.left: parent.left + anchors.top: parent.top + margin.left: 18 + margin.top: 98 + onClick: displayErrorBox("Error", "Not implemented yet") + + Label + text: Customise the console + anchors.left: prev.right + anchors.top: prev.top + margin.left: 10 + margin.top: -2 + + // hotkeys + Button + text: Hotkeys + anchors.left: parent.left + anchors.top: parent.top + margin.left: 18 + margin.top: 131 + onClick: displayErrorBox("Error", "Not implemented yet") + + Label + text: Edit your hotkey texts + anchors.left: prev.right + anchors.top: prev.top + margin.left: 10 + margin.top: -2 + + HorizontalSeparator + anchors.left: parent.left + anchors.right: parent.right + anchors.bottom: parent.bottom + margin.bottom: 97 + margin.left: 18 + margin.right: 18 + + // motd + Button + text: Motd + anchors.left: parent.left + anchors.bottom: parent.bottom + margin.left: 18 + margin.bottom: 60 + onClick: displayErrorBox("Error", "Not implemented yet") + + Label + text: |- + Show the most recent + Message of the Day + anchors.left: prev.right + anchors.top: prev.top + margin.left: 10 + margin.top: -2 + + HorizontalSeparator + anchors.left: parent.left + anchors.right: parent.right + anchors.bottom: parent.bottom + margin.bottom: 40 + margin.left: 13 + margin.right: 13 + + // ok button + Button + text: Ok + width: 64 + anchors.right: parent.right + anchors.bottom: parent.bottom + margin.right: 10 + margin.bottom: 10 + onClick: Options.destroy() \ No newline at end of file diff --git a/modules/game/skill.lua b/modules/skills/skills.lua similarity index 97% rename from modules/game/skill.lua rename to modules/skills/skills.lua index d2810290..839bf94d 100644 --- a/modules/game/skill.lua +++ b/modules/skills/skills.lua @@ -1,32 +1,30 @@ skillWindow = nil -local skills = {"Fist Fighting", "Club Fighting", "Sword Fighting", "Axe Fighting", "Distance Fighting", "Shielding", "Fishing"} +local skills = {"Fist Fighting", "Club Fighting", "Sword Fighting", "Axe Fighting", "Distance Fighting", "Shielding", "Fishing"} function csw() skillWindow = loadUI("/game/ui/skillwindow.otui", UI.root) - + local skillPanel = skillWindow:getChildById('skillPanel') - + -- create first widget cause of layout local widget = UIWidget.create() skillPanel:addChild(widget) widget:setStyle('SkillFirstWidget') - + -- create skills for i=1,#skills,1 do local nameLabel = UILabel.create() skillPanel:addChild(nameLabel) nameLabel:setStyle('SkillNameLabel') nameLabel:setText(skills[i]) - local levelLabel = UILabel.create() skillPanel:addChild(levelLabel) levelLabel:setStyle('SkillLevelLabel') levelLabel:setId('skillLevelId' .. i) levelLabel:setText('10') - - + local percentPanel = UIWidget.create() skillPanel:addChild(percentPanel) percentPanel:setStyle('SkillPercentPanel') @@ -36,5 +34,4 @@ end function Game.setSkill(id, level, percent) local skillPanel = skillWindow:getChildById('skillPanel') local levelLabel = skillPanel:getChildById('skillLevel' .. id) -end - +end \ No newline at end of file diff --git a/modules/skills/skills.otmod b/modules/skills/skills.otmod new file mode 100644 index 00000000..e69de29b diff --git a/modules/game/ui/skillwindow.otui b/modules/skills/skills.otui similarity index 97% rename from modules/game/ui/skillwindow.otui rename to modules/skills/skills.otui index 26d61e48..30c2db8a 100644 --- a/modules/game/ui/skillwindow.otui +++ b/modules/skills/skills.otui @@ -44,4 +44,4 @@ Window margin.top: 19 margin.bottom: 3 margin.left: 3 - margin.right: 3 + margin.right: 3 \ No newline at end of file diff --git a/modules/topmenu/topmenu.otui b/modules/topmenu/topmenu.otui index 1d444644..0a6f02d4 100644 --- a/modules/topmenu/topmenu.otui +++ b/modules/topmenu/topmenu.otui @@ -11,6 +11,7 @@ TopPanel anchors.left: parent.left margin.top: 3 margin.left: 6 + onClick: Options.create() UIWidget size: 16 16 @@ -22,7 +23,12 @@ TopPanel anchors.top: prev.top anchors.left: prev.right margin.left: 6 - onClick: EnterGame.show() + onClick: | + if Game.isOnline() then + CharacterList.show() + else + EnterGame.show() + end UIWidget size: 16 16 @@ -46,4 +52,17 @@ TopPanel size: 16 16 image: /core_styles/icons/logout.png anchors.centerIn: parent + phantom: true + + TopButton + anchors.top: parent.top + anchors.right: prev.left + margin.top: 3 + margin.right: 6 + onClick: About.create() + + UIWidget + size: 16 16 + image: /core_styles/icons/about.png + anchors.centerIn: parent phantom: true \ No newline at end of file diff --git a/modules/game/vip.lua b/modules/viplist/viplist.lua similarity index 98% rename from modules/game/vip.lua rename to modules/viplist/viplist.lua index 8cc575c0..b5de510b 100644 --- a/modules/game/vip.lua +++ b/modules/viplist/viplist.lua @@ -6,31 +6,31 @@ end function Game.onAddVip(id, name, online) local vipList = vipWindow:getChildById('vipList') - + local label = UILabel.create() vipList:addChild(label) label:setId('vip' .. id) label:setText(name) label:setStyle('VipListLabel') - + if online then label:setForegroundColor('#00ff00') else label:setForegroundColor('#ff0000') end - + label.vipOnline = online end function Game.onVipStateChange(id, online) local vipList = vipWindow:getChildById('vipList') local label = vipList:getChildById('vip' .. id) - + if online then label:setForegroundColor('#00ff00') else label:setForegroundColor('#ff0000') end - + label.vipOnline = online end diff --git a/modules/viplist/viplist.otmod b/modules/viplist/viplist.otmod new file mode 100644 index 00000000..e69de29b diff --git a/modules/game/ui/vipwindow.otui b/modules/viplist/viplist.otui similarity index 100% rename from modules/game/ui/vipwindow.otui rename to modules/viplist/viplist.otui diff --git a/src/framework/luascript/luafunctions.cpp b/src/framework/luascript/luafunctions.cpp index 1a692275..a8c85e10 100644 --- a/src/framework/luascript/luafunctions.cpp +++ b/src/framework/luascript/luafunctions.cpp @@ -71,6 +71,7 @@ void LuaInterface::registerFunctions() g_lua.bindClassMemberFunction("show", &UIWidget::show); g_lua.bindClassMemberFunction("lock", &UIWidget::lock); g_lua.bindClassMemberFunction("unlock", &UIWidget::unlock); + g_lua.bindClassMemberFunction("focus", &UIWidget::focus); g_lua.bindClassMemberFunction("getChildren", &UIWidget::getChildren); g_lua.bindClassMemberFunction("getChildById", &UIWidget::getChildById); g_lua.bindClassMemberFunction("getChildByIndex", &UIWidget::getChildByIndex); diff --git a/src/framework/ui/uiwidget.cpp b/src/framework/ui/uiwidget.cpp index cc8a308d..8c07a5d7 100644 --- a/src/framework/ui/uiwidget.cpp +++ b/src/framework/ui/uiwidget.cpp @@ -82,13 +82,22 @@ void UIWidget::destroy() } void UIWidget::render() +{ + renderSelf(); + renderChildren(); +} + +void UIWidget::renderSelf() { // draw background if(m_image) { g_graphics.bindColor(m_backgroundColor); m_image->draw(m_rect); } +} +void UIWidget::renderChildren() +{ // draw children for(const UIWidgetPtr& child : m_children) { // render only visible children with a valid rect @@ -191,6 +200,12 @@ void UIWidget::unlock() parent->unlockChild(asUIWidget()); } +void UIWidget::focus() +{ + if(UIWidgetPtr parent = getParent()) + parent->focusChild(asUIWidget(), Fw::ActiveFocusReason); +} + bool UIWidget::isVisible() { if(!m_visible) diff --git a/src/framework/ui/uiwidget.h b/src/framework/ui/uiwidget.h index d89ea3f9..92105e56 100644 --- a/src/framework/ui/uiwidget.h +++ b/src/framework/ui/uiwidget.h @@ -40,6 +40,8 @@ public: virtual void setup(); virtual void render(); + void renderSelf(); + void renderChildren(); void setVisible(bool visible); void setEnabled(bool enabled) { m_enabled = enabled; updateState(Fw::DisabledState); } @@ -76,6 +78,7 @@ public: void enable() { setEnabled(true); } void lock(); void unlock(); + void focus(); bool isActive() const { return hasState(Fw::ActiveState); } bool isEnabled() const { return !hasState(Fw::DisabledState); } diff --git a/src/otclient/otclient.cpp b/src/otclient/otclient.cpp index 3c74f55a..2c6146ad 100644 --- a/src/otclient/otclient.cpp +++ b/src/otclient/otclient.cpp @@ -148,7 +148,7 @@ void OTClient::run() render(); // render fps - defaultFont->renderText(fpsText, Point(g_graphics.getScreenSize().width() - fpsTextSize.width() - 10, 34)); + defaultFont->renderText(fpsText, Point(g_graphics.getScreenSize().width() - fpsTextSize.width() - 10, 38)); // render end g_graphics.endRender(); diff --git a/src/otclient/ui/uimap.cpp b/src/otclient/ui/uimap.cpp index c203aeaf..3554d68b 100644 --- a/src/otclient/ui/uimap.cpp +++ b/src/otclient/ui/uimap.cpp @@ -23,6 +23,8 @@ #include "uimap.h" #include #include +#include +#include void UIMap::setup() { @@ -31,10 +33,15 @@ void UIMap::setup() void UIMap::render() { - if(g_game.isOnline()) - g_map.draw(m_rect); + renderSelf(); - UIWidget::render(); + if(g_game.isOnline()) { + g_graphics.bindColor(Fw::black); + g_graphics.drawBoundingRect(m_mapRect.expanded(1)); + g_map.draw(m_mapRect); + } + + renderChildren(); } bool UIMap::onKeyPress(uchar keyCode, char keyChar, int keyboardModifiers) @@ -83,6 +90,16 @@ bool UIMap::onKeyPress(uchar keyCode, char keyChar, int keyboardModifiers) return UIWidget::onKeyPress(keyCode, keyChar, keyboardModifiers); } +void UIMap::onStyleApply(const OTMLNodePtr& styleNode) +{ + for(OTMLNodePtr node : styleNode->children()) { + if(node->tag() == "map margin") + m_mapMargin = node->value(); + } + + UIWidget::onStyleApply(styleNode); +} + bool UIMap::onMousePress(const Point& mousePos, Fw::MouseButton button) { return UIWidget::onMousePress(mousePos, button); @@ -90,10 +107,9 @@ bool UIMap::onMousePress(const Point& mousePos, Fw::MouseButton button) void UIMap::onGeometryUpdate(const Rect& oldRect, const Rect& newRect) { - Rect mapRect = newRect; + Rect mapRect = newRect.expanded(-m_mapMargin-1); Size mapSize(15*32, 11*32); mapSize.scale(mapRect.size(), Fw::KeepAspectRatio); - mapRect.setSize(mapSize); - if(mapRect != newRect) - setRect(mapRect); + m_mapRect.setSize(mapSize); + m_mapRect.moveCenter(newRect.center()); } diff --git a/src/otclient/ui/uimap.h b/src/otclient/ui/uimap.h index f9ecd2f4..15c518b4 100644 --- a/src/otclient/ui/uimap.h +++ b/src/otclient/ui/uimap.h @@ -33,11 +33,14 @@ public: void render(); protected: + virtual void onStyleApply(const OTMLNodePtr& styleNode); virtual bool onKeyPress(uchar keyCode, char keyChar, int keyboardModifiers); virtual bool onMousePress(const Point& mousePos, Fw::MouseButton button); virtual void onGeometryUpdate(const Rect& oldRect, const Rect& newRect); private: + int m_mapMargin; + Rect m_mapRect; }; #endif