8 <lua file="interaction.lua" />
12 <!-- Track when the user change its Faction PVP Mode -->
13 <variable entry="UI:VARIABLES:USER:TRACK_PVP_CHANGE_MODE"
16 <variable entry="UI:VARIABLES:USER:TRACK_TARGET_PVP_CHANGE_MODE"
19 <!-- need for target's percent -->
20 <define id="target_hp_percent"
21 value="UI:VARIABLES:BARS:TARGET:HP_PERCENT" />
22 <define id="target_sap_percent"
23 value="UI:VARIABLES:BARS:TARGET:SAP_PERCENT" />
24 <define id="target_sta_percent"
25 value="UI:VARIABLES:BARS:TARGET:STA_PERCENT" />
26 <!-- The Target selected -->
27 <define id="target_name_id"
28 value="SERVER:Entities:E[UI:VARIABLES:TARGET:SLOT]:P6" />
29 <define id="target_uid"
30 value="SERVER:TARGET:BARS:UID" />
31 <define id="target_player_level"
32 value="SERVER:TARGET:BARS:PLAYER_LEVEL" />
33 <define id="region_force_1"
34 value="113 170 138 255" />
35 <!-- Newbieland creatures... -->
36 <define id="region_force_2"
37 value="112 112 221 255" />
38 <define id="region_force_3"
39 value="255 255 180 255" />
40 <define id="region_force_4"
41 value="238 160 96 255" />
42 <define id="region_force_5"
43 value="204 48 48 255" />
44 <define id="region_force_6"
45 value="144 48 144 255" />
46 <define id="force_level_1"
47 value="consider_1.tga" />
48 <define id="force_level_2"
49 value="consider_2.tga" />
50 <define id="force_level_3"
51 value="consider_3.tga" />
52 <define id="force_level_4"
53 value="consider_4.tga" />
54 <define id="force_level_5"
55 value="consider_5.tga" />
56 <define id="force_level_6"
57 value="consider_6.tga" />
58 <define id="force_level_7"
59 value="consider_6.tga" />
60 <define id="force_level_8"
61 value="consider_7.tga" />
62 <proc id="proc_target_changed">
64 <action handler="set_target_name"
65 params="slot=@@UI:VARIABLES:TARGET:SLOT|target=ui:interface:target:uc_title|
66 title=ui:interface:target:header_opened:target_title:uc_hardtext" />
67 <!-- Region force & Force level of the creature/player -->
68 <!-- old consider system -->
70 <action handler="set_force_region_level" params="slot=@@UI:VARIABLES:TARGET:SLOT|targetRegion=ui:interface:target:header_opened:target_force|targetLevel=ui:interface:target:header_opened:target_level" />
72 <!-- new consider level : lua code only -->
74 params="game:updateTargetConsiderUI()" />
76 <link expr="depends(@%target_name_id)"
78 params="proc_target_changed" />
79 <!-- will be called if either UI:VARIABLES:TARGET:SLOT (local) or P6 (server) changes -->
80 <link expr="depends(@%target_uid)"
82 params="proc_target_changed" />
83 <!-- detects when the target has changed -->
84 <link expr="depends(@%target_player_level)"
86 params="proc_target_changed" />
87 <!-- detect when the player level has changed (or called after the target has changed and the player level been read) -->
88 <link expr="depends(@UI:VARIABLES:USER:TRACK_PVP_CHANGE_MODE)"
90 params="proc_target_changed" />
91 <!-- detect when the user PVP mode has changed -->
92 <link expr="depends(@UI:VARIABLES:USER:TRACK_TARGET_PVP_CHANGE_MODE)"
94 params="proc_target_changed" />
95 <!--<link expr="depends(@UI:VARIABLES:USER:TRACK_TARGET_PVP_CHANGE_MODE)"
97 params="game:inPvPMode()" />-->
98 <!-- detect when the target PVP mode has changed -->
99 <!-- Target bars and tooltips -->
100 <template name="jauges_target"
107 color1="%focus_color"
108 value1="%target_focus"
109 range1="UI:CONST:127"
112 range2="UI:CONST:127"
115 range3="UI:CONST:127" />
150 <template name="jauge_score_target"
163 posparent="#posparent"
169 <group id="jauge_bar"
181 <!-- target percent text -->
187 color="255 255 255 255"
193 <view type="text_number"
198 color="255 255 255 255"
211 color="255 255 255 255"
217 <link expr="depends(@#val)"
219 params="target='ui:interface:target:content:#id:jauge_bar:w'|value=div(mul(@#val, 156), 100)" />
220 <link expr="depends(@%target_hp, @%target_sap, @%target_sta, @UI:VARIABLES:CURRENT_SMOOTH_SERVER_TICK)"
222 params="game:showTargetPercent()" />
225 <!-- the Main Group -->
226 <group type="container"
237 global_color_over="true"
244 on_active_params="dblink=UI:VARIABLES:ISACTIVE:TARGET|value=1"
246 on_deactive_params="dblink=UI:VARIABLES:ISACTIVE:TARGET|value=0"
247 help_page="interf_target.html"
248 header_active="false"
249 title_delta_max_w="-44"
250 title_over_extend_view_text="true">
254 global_color="false" />
255 <!--<view type="bitmap"
258 texture="user/interface/images/frame_bg.tga"
260 global_color="false" />-->
261 <group id="header_closed"
266 group_onclick_r="active_menu"
267 group_params_r="menu=ui:interface:base_menu_with_color">
269 <group id="header_opened"
274 group_onclick_r="active_menu"
275 group_params_r="menu=ui:interface:base_menu_with_color">
281 color="255 255 255 255"
287 over_extend_view_text="true" />
288 <!-- complex level display version -->
290 <view type="bitmap" id="slot_force" posref="BR BR" x="0" y="0" color="255 255 255 255" texture="W_slot_consider.tga" />
291 <view type="bitmap" id="target_force" posparent="slot_force" posref="MM MM" x="0" y="0" w="30" h="14" scale="true" color="0 0 0 0" global_color="false" texture="blank.tga" />
292 <view type="bitmap" id="target_level" posparent="target_force" posref="MM MM" global_color="false" texture="consider_1.tga" />
293 <ctrl type="tooltip" id="force" tooltip="uiForce" color="0 0 0 255" posparent="slot_force" posref="MM MM" x="0" y="0" sizeref="wh" w="0" h="0" tooltip_parent="win" />
295 <!-- simple level version -->
303 texture="blank_n.tga" />
307 posparent="slot_force"
310 color="255 255 255 255"
318 posparent="slot_claw"
323 texture="blank_n.tga"
330 posparent="slot_claw"
333 color="255 255 255 255"
343 posparent="slot_force"
346 color="255 255 255 255"
347 texture="consider_ring.tga"
354 posparent="slot_claw"
360 color="255 255 255 255"
361 texture="skull_imp.tga"
367 tooltip="uittConsiderTargetNoSelection"
369 posparent="slot_force"
376 tooltip_parent="win" />
391 texture="alpha_10.tga"
393 inherit_gc_alpha="false" />
400 texture="alpha_10.tga"
402 inherit_gc_alpha="false" />
409 texture="alpha_10.tga"
411 inherit_gc_alpha="false" />
418 texture="alpha_10.tga"
420 inherit_gc_alpha="false" />
427 texture="alpha_10.tga"
429 inherit_gc_alpha="false" />
436 texture="alpha_10.tga"
438 inherit_gc_alpha="false" />
454 texture="blank.tga" />
457 posparent="slot_fake_jauge"
461 texture="slot_jauge.tga"
462 inherit_gc_alpha="false"
466 posparent="slot_fake_jauge"
470 texture="slot_jauge.tga"
471 inherit_gc_alpha="false"
475 posparent="slot_fake_jauge"
479 texture="slot_jauge.tga"
480 inherit_gc_alpha="false"
482 <instance template="jauge_score_target"
486 color="255 93 38 255"
488 val="%target_hp_percent" />
489 <instance template="jauge_score_target"
493 color="100 255 40 255"
495 val="%target_sap_percent" />
496 <instance template="jauge_score_target"
500 color="255 37 254 255"
502 val="%target_sta_percent" />
503 <instance template="text_tt"
505 tooltip="uittTargetHp"
506 tooltip_parent="win" />
509 <!-- when the level of the player change, we should update the consider widget, so add an observer to each of its skills -->
510 <link expr="depends(@SERVER:USER:SKILL_POINTS_0:VALUE)"
512 params="game:updateTargetConsiderUI()" />
513 <link expr="depends(@SERVER:USER:SKILL_POINTS_1:VALUE)"
515 params="game:updateTargetConsiderUI()" />
516 <link expr="depends(@SERVER:USER:SKILL_POINTS_2:VALUE)"
518 params="game:updateTargetConsiderUI()" />
519 <link expr="depends(@SERVER:USER:SKILL_POINTS_3:VALUE)"
521 params="game:updateTargetConsiderUI()" />
522 <!-- As well, if member are added, rmoved from the team, then the player may see the level of stronger creature, so update -->
523 <!-- the consider widget a well -->
524 <link expr="depends(@SERVER:GROUP:0:PRESENT)"
526 params="game:updateTargetConsiderUI()" />
527 <link expr="depends(@SERVER:GROUP:1:PRESENT)"
529 params="game:updateTargetConsiderUI()" />
530 <link expr="depends(@SERVER:GROUP:2:PRESENT)"
532 params="game:updateTargetConsiderUI()" />
533 <link expr="depends(@SERVER:GROUP:3:PRESENT)"
535 params="game:updateTargetConsiderUI()" />
536 <link expr="depends(@SERVER:GROUP:4:PRESENT)"
538 params="game:updateTargetConsiderUI()" />
539 <link expr="depends(@SERVER:GROUP:5:PRESENT)"
541 params="game:updateTargetConsiderUI()" />
542 <link expr="depends(@SERVER:GROUP:6:PRESENT)"
544 params="game:updateTargetConsiderUI()" />
545 <link expr="depends(@SERVER:GROUP:7:PRESENT)"
547 params="game:updateTargetConsiderUI()" />
549 <tree node="target" />
550 <!-- **************************************** -->
551 <!-- * PEOPLE LISTS BASE CONTAINER TEMPLATE * -->
552 <!-- **************************************** -->
553 <!-- simple people list -->
554 <template name="people_list_container"
561 <group type="container"
568 header_color="UI:SAVE:WIN:COLORS:COM"
570 global_color_over="true"
572 <group id="header_closed"
576 posref="TL TL"></group>
577 <group id="header_opened"
581 posref="TL TL"></group>
584 <!-- ********************************** -->
585 <!-- FRIEND LIST & IGNORE LIST TEMPLATE -->
586 <!-- ********************************** -->
587 <template name="people_list_container_with_add_edit_box"
593 <group type="container"
599 header_color="UI:SAVE:WIN:COLORS:COM"
601 global_color_over="true">
602 <group id="header_closed"
607 <ctrl style="text_button_16"
612 onclick_l="add_contact_begin"
613 params_l="group=ui:interface:add_contact"
614 hardtext="uiPeopleAdd" />
616 <group id="header_opened"
621 <ctrl style="text_button_16"
626 onclick_l="add_contact_begin"
627 params_l="group=ui:interface:add_contact"
628 hardtext="uiPeopleAdd" />
634 posref="TL TL"></group>
639 exit_click_out="true"
642 child_resize_h="true"
643 child_resize_hmargin="14"
645 on_active="set_keyboard_focus"
646 on_active_params="target=ui:interface:add_contact:add_contact_eb:eb|select_all=false">
650 case_mode="%case_first_word_letter_up"
654 color="255 255 255 255"
658 hardtext="uiPeopleAddContact" />
659 <instance template="edit_box_widget"
664 child_resize_h="true"
666 onenter="add_contact"
668 entry_type="playername" />
669 <instance template="button_ok_cancel"
670 posparent="add_contact_eb"
674 onclick_ok="add_contact"
676 onclick_cancel="leave_modal"
677 onclick_cancel_param="" />
679 <!-- ***************** -->
680 <!-- * CHAT TEMPLATE * -->
681 <!-- ***************** -->
682 <template name="chat_id"
688 <group type="container"
692 posparent="#posparent"
697 open_when_popup="true"
698 header_color="UI:SAVE:WIN:COLORS:COM"
700 global_color_over="true"
706 <group id="header_closed"
710 posref="TL TL"></group>
711 <group id="header_opened"
716 posref="TL TL"></group>
723 <instance template="chat_box"
730 <instance template="edit_box_widget"
735 child_resize_h="true"
738 onenter="chat_box_entry"
739 backup_father_container_pos="true" />
743 <!-- chat window with a 'clear' button -->
744 <template name="clearable_chat_id"
750 <group type="container"
754 posparent="#posparent"
759 open_when_popup="true"
760 header_color="UI:SAVE:WIN:COLORS:COM"
762 global_color_over="true"
768 <group id="header_closed"
772 posref="TL TL"></group>
773 <group id="header_opened"
778 posref="TL TL"></group>
785 <instance template="chat_box"
792 <instance template="edit_box_widget"
797 child_resize_h="true"
800 onenter="chat_box_entry"
801 backup_father_container_pos="true" />
802 <ctrl style="text_button_16"
809 color="255 255 255 255"
810 col_over="255 255 255 255"
811 col_pushed="255 255 255 255"
813 params_l="runCommand('clear', getUICaller().id)"
818 <!-- ********************************** -->
819 <!-- * CHAT WITH NO EDIT BOX TEMPLATE * -->
820 <!-- ********************************** -->
821 <template name="chat_no_eb_id"
827 <group type="container"
830 posparent="#posparent"
834 open_when_popup="true"
835 header_color="UI:SAVE:WIN:COLORS:COM"
837 global_color_over="true"
843 <group id="header_closed"
847 posref="TL TL"></group>
848 <group id="header_opened"
854 child_resize_h="true"
855 child_resize_hmargin="8"></group>
861 <instance template="chat_box"
870 <!-- ***************************** -->
871 <!-- * CHAT WITH FILTER TEMPLATE * -->
872 <!-- ***************************** -->
873 <template name="filtered_chat_id"
879 <group type="container"
883 posparent="#posparent"
887 open_when_popup="true"
893 header_color="UI:SAVE:WIN:COLORS:COM"
895 global_color_over="true"
897 <group id="header_closed"
902 group_onclick_r="select_chat_source"></group>
903 <group id="header_opened"
908 group_onclick_r="select_chat_source"></group>
915 <instance template="chat_box"
923 <!-- display of filters -->
924 <ctrl style="text_button_16"
930 hardtext="uiFilterAround"
931 onclick_l="select_chat_target"
932 params_l="menu=ui:interface:user_chat_target_menu|party_chats=false" />
933 <instance template="edit_box_widget"
938 child_resize_h="true"
941 onenter="chat_box_entry"
942 backup_father_container_pos="true" />
946 <!-- ************* -->
947 <!-- GROUP OF CHAT -->
948 <!-- ************* -->
949 <!-- Change those value to change the tab color wether a new message is present or not -->
950 <define id="chat_group_tab_color_normal"
951 value="255 255 255 128" />
952 <define id="chat_group_tab_color_newmsg"
953 value="255 100 100 220" />
955 id="user_chat_target_menu"
959 name="uiFilterMenuAround"
960 handler="chat_target_selected"
964 name="uiFilterMenuRegion"
965 handler="chat_target_selected"
968 <action id="universe"
969 name="uiFilterMenuUniverse"
970 handler="chat_target_selected"
974 name="uiFilterMenuTeam"
975 handler="chat_target_selected"
979 name="uiFilterMenuGuild"
980 handler="chat_target_selected"
984 <!-- actual action handlers are created in code, this just lists the emotes we want to appear in the quick access menu -->
986 id="user_chat_emote_menu"
988 case_mode="%case_normal"
989 on_active="lua:game:updateEmoteMenu()">
990 <action id="uiEM_Wave"
991 name="uiQuickEmote" />
992 <action id="uiEM_Bow"
993 name="uiQuickEmote" />
994 <action id="uiEM_Courtly"
995 name="uiQuickEmote" />
996 <action id="uiEM_Hiha"
997 name="uiQuickEmote" />
998 <action id="uiEM_Thankful"
999 name="uiQuickEmote" />
1000 <action id="uiEM_Cheer"
1001 name="uiQuickEmote" />
1002 <action id="uiEM_Silly"
1003 name="uiQuickEmote" />
1004 <action id="uiEM_Dance"
1005 name="uiQuickEmote" />
1006 <action id="uiEM_Dramatic"
1007 name="uiQuickEmote" />
1008 <action id="uiEM_Heroic"
1009 name="uiQuickEmote" />
1011 <action id="quick_chat"
1012 name="uimQuickChat">
1016 handler="talk_message"
1021 handler="talk_message"
1026 handler="talk_message"
1031 handler="talk_message"
1036 handler="talk_message"
1041 handler="talk_message"
1046 handler="talk_message"
1051 handler="talk_message"
1056 handler="talk_message"
1061 handler="talk_message"
1066 <!-- a template of a dynamic chat tab -->
1067 <template name="temp_tab_dyn_chat"
1073 <ctrl style="tab_button_new"
1075 group="content:cb:dyn_chat#nb"
1076 posparent="#posparent"
1078 textid="SERVER:DYN_CHAT:CHANNEL#nb:NAME"
1079 dynamic_string="true"
1081 params_r="dblink=UI:SAVE:ISDETACHED:DYNAMIC_CHAT#nb|value=1"
1082 onclick_l="chat_group_filter"
1083 params_l="dyn_chat#nb" />
1084 <link expr="and(and(ne(@SERVER:DYN_CHAT:CHANNEL#nb:NAME,0), @UI:SAVE:ISENABLED:DYNAMIC_CHAT#nb),
1085 not(@UI:SAVE:ISDETACHED:DYNAMIC_CHAT#nb))"
1086 target="#id:active" />
1088 <!-- To know if a dynamic chat has been selected and which -->
1089 <variable entry="UI:VARIABLES:MAIN_CHAT:WRITE_RIGHT"
1092 <variable entry="UI:VARIABLES:MAIN_CHAT:IS_DYN_CHAT"
1095 <variable entry="UI:VARIABLES:MAIN_CHAT:INDEX_DYN_CHAT"
1098 <define id="canWriteToMainChat"
1099 value="and(@UI:VARIABLES:MAIN_CHAT:WRITE_RIGHT, or(not(@UI:VARIABLES:MAIN_CHAT:IS_DYN_CHAT), @SERVER:DYN_CHAT:CHANNEL[UI:VARIABLES:MAIN_CHAT:INDEX_DYN_CHAT]:WRITE_RIGHT))" />
1100 <proc id="main_chat_group_active">
1101 <action handler="set"
1102 params="dblink=UI:VARIABLES:ISACTIVE:CHAT_GROUP|value=1" />
1103 <action handler="set"
1104 params="dblink=UI:SAVE:ISDETACHED:CHAT_GROUP|value=1" />
1106 <proc id="main_chat_group_deactive">
1107 <action handler="set"
1108 params="dblink=UI:VARIABLES:ISACTIVE:CHAT_GROUP|value=0" />
1109 <action handler="set"
1110 params="dblink=UI:SAVE:ISDETACHED:CHAT_GROUP|value=0" />
1112 <!-- the main chat group -->
1113 <!-- IMPORTANT : below there are no 'on_active' & 'on_deactive' because these are set by C++ code -->
1114 <!-- these will call the 'main_chat_group_active' & 'main_chat_group_deactive' above -->
1115 <template name="main_chat_group"
1121 <group type="container"
1125 posparent="#posparent"
1129 open_when_popup="true"
1130 header_active="false"
1131 right_button="false"
1136 global_color="false"
1137 global_color_over="true"
1139 help_page="interf_chat.html"
1140 resizer_top_size="5">
1141 <group id="header_closed"
1145 posref="TL TL"></group>
1146 <group id="header_opened"
1152 group_onclick_r="select_chat_source">
1155 child_resize_w="true"
1160 <ctrl style="tab_button_new"
1164 group="content:cb:around"
1165 hardtext="uitabChatAround"
1167 params_r="dblink=UI:SAVE:ISDETACHED:AROUND_ME|value=1"
1168 onclick_l="chat_group_filter"
1170 tooltip="uittChatAround"
1171 tooltip_parent="win" />
1172 <ctrl style="tab_button_new"
1175 group="content:cb:region"
1176 hardtext="uitabChatRegion"
1178 params_r="dblink=UI:SAVE:ISDETACHED:REGION_CHAT|value=1"
1179 onclick_l="chat_group_filter"
1181 tooltip="uittChatRegion"
1182 tooltip_parent="win" />
1183 <ctrl style="tab_button_new"
1186 group="content:cb:team"
1187 hardtext="uitabChatTeam"
1189 params_r="dblink=UI:SAVE:ISDETACHED:TEAM_CHAT|value=1"
1190 onclick_l="chat_group_filter"
1192 tooltip="uittChatTeam"
1193 tooltip_parent="win" />
1194 <ctrl style="tab_button_new"
1197 group="content:cb:guild"
1198 hardtext="uitabChatGuild"
1200 params_r="dblink=UI:SAVE:ISDETACHED:GUILD_CHAT|value=1"
1201 onclick_l="chat_group_filter"
1203 tooltip="uittChatGuild"
1204 tooltip_parent="win" />
1205 <!-- Yes order is strange, but don't want to modify all the ugly hardcoded code -->
1206 <ctrl style="tab_button_new"
1209 group="content:cb:universe"
1210 hardtext="uitabChatUniverse"
1212 params_r="dblink=UI:SAVE:ISDETACHED:UNIVERSE_CHAT|value=1"
1213 onclick_l="chat_group_filter"
1215 tooltip="uittChatUniverse"
1216 tooltip_parent="win" />
1217 <ctrl style="tab_button_new"
1220 group="content:cb:sysinfo"
1221 hardtext="uitabChatSysInfo"
1223 params_r="dblink=UI:SAVE:ISDETACHED:SYSTEM_INFO|value=1"
1224 onclick_l="chat_group_filter"
1226 tooltip="uittChatSysInfo"
1227 tooltip_parent="win" />
1228 <ctrl style="tab_button_new"
1231 group="content:cb:user"
1232 hardtext="uitabChatUser"
1233 onclick_l="chat_group_filter"
1235 tooltip="uittChatUser"
1236 tooltip_parent="win" />
1237 <!-- Fixed number of dynamic chat allowed. force _firstpos and _nextpos to have correctly aligned tab-->
1238 <vector template="temp_tab_dyn_chat"
1239 _size="%max_dyn_chan_per_player"
1245 <!-- Show or hide tabs : a tab is visible if it is not filtered into the user chat AND not detached -->
1246 <link expr="and(@UI:SAVE:ISENABLED:AROUND_ME,
1247 not(@UI:SAVE:ISDETACHED:AROUND_ME))"
1248 target="tab0:active" />
1249 <link expr="and(@UI:SAVE:ISENABLED:REGION_CHAT,
1250 not(@UI:SAVE:ISDETACHED:REGION_CHAT))"
1251 target="tab1:active" />
1252 <link expr="and(@UI:SAVE:ISENABLED:UNIVERSE_CHAT,
1253 not(@UI:SAVE:ISDETACHED:UNIVERSE_CHAT))"
1254 target="tab6:active" />
1255 <link expr="and (and(%is_team_present, @UI:SAVE:ISENABLED:TEAM_CHAT),
1256 not(@UI:SAVE:ISDETACHED:TEAM_CHAT))"
1257 target="tab2:active" />
1258 <link expr="and (and(%is_guild_present,@UI:SAVE:ISENABLED:GUILD_CHAT),
1259 not(@UI:SAVE:ISDETACHED:GUILD_CHAT))"
1260 target="tab3:active" />
1261 <link expr="and(@UI:SAVE:ISENABLED:SYSTEM_INFO,
1262 not(@UI:SAVE:ISDETACHED:SYSTEM_INFO))"
1263 target="tab4:active" />
1264 <link expr="not(@UI:SAVE:ISDETACHED:USER_CHAT)"
1265 target="tab5:active" />
1266 <!-- Show individual chat windows if needed -->
1267 <link expr="and (@UI:SAVE:ISENABLED:AROUND_ME,
1268 @UI:SAVE:ISDETACHED:AROUND_ME)"
1269 target="ui:interface:around_me:active" />
1270 <link expr="and (@UI:SAVE:ISENABLED:REGION_CHAT,
1271 @UI:SAVE:ISDETACHED:REGION_CHAT)"
1272 target="ui:interface:region_chat:active" />
1273 <link expr="and (@UI:SAVE:ISENABLED:UNIVERSE_CHAT,
1274 @UI:SAVE:ISDETACHED:UNIVERSE_CHAT)"
1275 target="ui:interface:universe_chat:active" />
1276 <link expr="and (and(%is_team_present, @UI:SAVE:ISENABLED:TEAM_CHAT),
1277 @UI:SAVE:ISDETACHED:TEAM_CHAT)"
1278 target="ui:interface:team_chat:active" />
1279 <link expr="and (and(%is_guild_present,@UI:SAVE:ISENABLED:GUILD_CHAT),
1280 @UI:SAVE:ISDETACHED:GUILD_CHAT)"
1281 target="ui:interface:guild_chat:active" />
1282 <link expr="and (@UI:SAVE:ISENABLED:SYSTEM_INFO,
1283 @UI:SAVE:ISDETACHED:SYSTEM_INFO)"
1284 target="ui:interface:system_info:active" />
1285 <link expr="@UI:SAVE:ISDETACHED:USER_CHAT"
1286 target="ui:interface:user_chat:active" />
1290 posparent="channel_select"
1298 color="166 166 166 255" />
1311 <instance template="chat_box_mainchat"
1318 <instance template="chat_box_mainchat"
1325 <instance template="chat_box_mainchat"
1332 <instance template="chat_box_mainchat"
1339 <instance template="chat_box_mainchat"
1346 <instance template="chat_box_mainchat"
1353 <instance template="chat_box_mainchat"
1360 <!-- Fixed number of dynamic chat allowed -->
1361 <vector template="chat_box_mainchat"
1363 _size="%max_dyn_chan_per_player"
1370 <instance template="edit_box_widget"
1375 child_resize_h="true"
1378 onenter="chat_box_entry"
1379 reset_focus_on_hide="false"
1380 backup_father_container_pos="true" />
1381 <ctrl style="text_button_16"
1387 hardtext="uiFilterAround"
1388 tooltip="uittFilterChat"
1389 tooltip_parent="win"
1390 onclick_l="select_chat_target"
1391 params_l="menu=ui:interface:user_chat_target_menu|party_chats=false"
1392 case_mode="%case_normal" />
1393 <ctrl style="text_button_16"
1399 hardtext="uiEmoteTitle"
1401 tooltip_parent="win"
1403 onclick_l="active_menu"
1404 params_l="menu=ui:interface:user_chat_emote_menu" />
1410 hardtext="uiCannotWriteDynChat"
1414 <!-- if dynamic chat, show the edit box only if write enabled -->
1415 <link expr="%canWriteToMainChat"
1416 target="ebw:active" />
1417 <link expr="%canWriteToMainChat"
1418 target="ebw:eb:enter_recover_focus" />
1419 <!-- important else if press enter, then the edit box is reactivated! -->
1420 <link expr="not(%canWriteToMainChat)"
1421 target="cant_write_ebw:active" />
1425 <!-- each time the chat colors are changed, must reset the chat group prompt -->
1426 <link expr="@UI:SAVE:CHAT:COLORS"
1427 action="chat_group_update_prompt" />
1428 <!-- ************************ -->
1429 <!-- * SYSTEM INFO TEMPLATE * -->
1430 <!-- ************************ -->
1431 <template name="system_info_id"
1436 title_opened="uiInfosSystem">
1437 <group type="container"
1442 title_opened="#title_opened"
1446 open_when_popup="true"
1452 header_color="UI:SAVE:WIN:COLORS:COM"
1453 global_color="false"
1454 global_color_over="true">
1455 <group id="header_closed"
1460 posref="TL TL"></group>
1461 <group id="header_opened"
1466 posref="TL TL"></group>
1473 <instance template="chat_box"
1484 <!-- ************* -->
1485 <!-- * TEAM_CHAT * -->
1486 <!-- ************* -->
1487 <proc id="team_chat_proc_close">
1488 <action handler="set"
1489 params="dblink=UI:SAVE:ISDETACHED:TEAM_CHAT|value=0" />
1491 <!-- ************* -->
1492 <!-- * AROUND_ME * -->
1493 <!-- ************* -->
1494 <proc id="around_me_chat_proc_close">
1495 <action handler="set"
1496 params="dblink=UI:SAVE:ISDETACHED:AROUND_ME|value=0" />
1498 <!-- *************** -->
1499 <!-- * REGION CHAT * -->
1500 <!-- *************** -->
1501 <proc id="region_chat_proc_close">
1502 <action handler="set"
1503 params="dblink=UI:SAVE:ISDETACHED:REGION_CHAT|value=0" />
1505 <!-- ***************** -->
1506 <!-- * UNIVERSE CHAT * -->
1507 <!-- ***************** -->
1508 <proc id="universe_chat_proc_close">
1509 <action handler="set"
1510 params="dblink=UI:SAVE:ISDETACHED:UNIVERSE_CHAT|value=0" />
1512 <!-- When the universe chat is activated, we must display a warning the first time
1513 Must do it on the variable manipulation, not when the window is shown (because it is always shown/hid at start of game)
1515 <link expr="@UI:SAVE:ISDETACHED:UNIVERSE_CHAT"
1516 cond="eq(@UI:SAVE:ISDETACHED:UNIVERSE_CHAT,1)"
1518 params="dblink=UI:VARIABLES:UNIVERSE_CHANEL_WARNING_WANTED|value=1" />
1519 <!-- *************** -->
1520 <!-- * SYSTEM INFO * -->
1521 <!-- *************** -->
1522 <proc id="sysinfo_chat_proc_close">
1523 <action handler="set"
1524 params="dblink=UI:SAVE:ISDETACHED:SYSTEM_INFO|value=0" />
1526 <!-- ************* -->
1527 <!-- * AROUND_ME * -->
1528 <!-- ************* -->
1529 <proc id="around_me_chat_proc_active"></proc>
1530 <proc id="around_me_chat_proc_deactive">
1531 <action handler="set"
1532 params="dblink=UI:SAVE:ISDETACHED:AROUND_ME|value=0" />
1534 <!-- *************** -->
1535 <!-- * REGION CHAT * -->
1536 <!-- *************** -->
1537 <proc id="region_chat_proc_active"></proc>
1538 <proc id="region_chat_proc_deactive">
1539 <action handler="set"
1540 params="dblink=UI:SAVE:ISDETACHED:REGION_CHAT|value=0" />
1542 <!-- *************** -->
1543 <!-- * SYSTEM INFO * -->
1544 <!-- *************** -->
1545 <proc id="sysinfo_chat_proc_active"></proc>
1546 <proc id="sysinfo_chat_proc_deactive">
1547 <action handler="set"
1548 params="dblink=UI:SAVE:ISDETACHED:SYSTEM_INFO|value=0" />
1550 <!-- ************* -->
1551 <!-- * TEAM_LIST * -->
1552 <!-- ************* -->
1553 <!-- team_list container is defined in code -->
1554 <proc id="team_list_proc_active">
1555 <action handler="set"
1556 params="dblink=UI:VARIABLES:ISACTIVE:TEAM_LIST|value=1" />
1557 <action handler="set"
1558 cond="not(%is_team_present)"
1559 params="target='ui:interface:team_list:active'|value=0" />
1561 <proc id="team_list_proc_deactive">
1562 <action handler="set"
1563 params="dblink=UI:VARIABLES:ISACTIVE:TEAM_LIST|value=0" />
1565 <!-- To Open/Close the Team window auto (but the user is allowed to close it) -->
1566 <variable entry="UI:VARIABLES:IS_TEAM_PRESENT"
1569 <link expr="%is_team_present"
1571 params="dblink=UI:VARIABLES:IS_TEAM_PRESENT|value=%is_team_present" />
1572 <!-- ************* -->
1573 <!-- * TEAM CHAT * -->
1574 <!-- ************* -->
1575 <link expr="%is_team_present"
1576 action="leave_team_chat" />
1577 <!-- ********************** -->
1578 <!-- * TEAM_MATE TEMPLATE * -->
1579 <!-- ********************** -->
1580 <template name="mate_id"
1588 <group type="container"
1592 posparent="#posparent"
1594 title_opened="#title"
1597 open_when_popup="true"
1602 global_color="false"
1603 global_color_over="true"
1605 <group id="header_closed"
1616 value1="UI:VARIABLES:BARS:TEAM:#team_mate_index:STA"
1617 range1="UI:CONST:127"
1619 value2="UI:VARIABLES:BARS:TEAM:#team_mate_index:SAP"
1620 range2="UI:CONST:127"
1622 color3_negative="%hp_color_neg"
1623 value3="UI:VARIABLES:BARS:TEAM:#team_mate_index:HP"
1624 range3="UI:CONST:127" />
1631 texture="w_leader.tga"
1632 global_color="false"
1640 texture="w_leader.tga"
1641 color="255 255 255 128"
1642 global_color="false"
1644 <ctrl type="tooltip"
1655 <ctrl type="tooltip"
1657 tooltip="uittSuccessor"
1659 posparent="successor"
1666 <!-- BIG TRANSPARENT BUTTON TO TARGET THE TEAM MEMBER. w="-16" to let the "popup" button work -->
1669 button_type="push_button"
1675 tx_normal="blank.tga"
1676 tx_pushed="blank.tga"
1679 col_pushed="0 0 0 0"
1680 col_over="255 255 255 32"
1681 onclick_l="team_target"
1682 params_l="#team_mate_index" />
1683 <!-- Button to activate the chat -->
1686 button_type="push_button"
1688 tx_normal="contact_chat.tga"
1689 tx_pushed="contact_chat.tga"
1690 tx_over="W_button_14_over.tga"
1691 global_color_normal="false"
1692 global_color_over="true"
1693 global_color_pushed="false"
1694 onclick_l="contact_direct_chat" />
1695 <!-- links to display lead or successor -->
1696 <link expr="eq(@SERVER:GROUP:LEADER_INDEX, #team_mate_index)"
1697 target="lead:active" />
1698 <link expr="eq(@SERVER:GROUP:SUCCESSOR_INDEX, #team_mate_index)"
1699 target="successor:active" />
1700 <link expr="eq(@SERVER:GROUP:LEADER_INDEX, #team_mate_index)"
1701 target="ttlead:active" />
1702 <link expr="eq(@SERVER:GROUP:SUCCESSOR_INDEX, #team_mate_index)"
1703 target="ttsucc:active" />
1706 <group id="header_opened" x="0" y="0" w="160" child_resize_h="true" child_resize_hmargin="4" posref="TL TL" >
1707 <view type="bar3" id="jauges" posref="TR TR" y="0" mini="true" x="-16"
1708 color1="%sta_color" value1="UI:VARIABLES:BARS:TEAM:#team_mate_index:STA" range1="UI:CONST:127"
1709 color2="%sap_color" value2="UI:VARIABLES:BARS:TEAM:#team_mate_index:SAP" range2="UI:CONST:127"
1710 color3="%hp_color" color3_negative="%hp_color_neg" value3="UI:VARIABLES:BARS:TEAM:#team_mate_index:HP" range3="UI:CONST:127" />
1711 <view type="bitmap" id="lead" posparent="jauges" posref="ML MR" x="-4" y="1" texture="w_leader.tga" global_color="false" />
1712 <view type="bitmap" id="successor" posparent="jauges" posref="ML MR" x="-4" y="1" texture="w_leader.tga" global_color="false" color="255 255 255 128" active="false"/>
1714 <ctrl type="tooltip" id="ttlead" tooltip="uittLead" instant_help="true" posparent="lead" posref="TL TL" x="0" y="0" sizeref="wh" w="0" h="0" />
1715 <ctrl type="tooltip" id="ttsucc" tooltip="uittSuccessor" instant_help="true" posparent="successor" posref="TL TL" x="0" y="0" sizeref="wh" w="0" h="0" />
1718 <instance template="chat_box" id="cb" posref="TR TR" sizeref="w" y="-8" w="0" h="64" min_height="64" max_height="1600"/>
1719 <instance template="edit_box_widget" id="ebw" posref="BR TR" y="0" posparent="cb" child_resize_h="true" sizeref="w" w="-10" onenter="contact_entry" backup_father_container_pos="true"/>
1721 <! - links to display lead or successor - >
1722 <link expr="eq(@SERVER:GROUP:LEADER_INDEX, #team_mate_index)" target="lead:active"/>
1723 <link expr="eq(@SERVER:GROUP:SUCCESSOR_INDEX, #team_mate_index)" target="successor:active"/>
1725 <link expr="eq(@SERVER:GROUP:LEADER_INDEX, #team_mate_index)" target="ttlead:active"/>
1726 <link expr="eq(@SERVER:GROUP:SUCCESSOR_INDEX, #team_mate_index)" target="ttsucc:active"/>
1730 <!-- link to display the group when the team member is present -->
1731 <link expr="ne(@SERVER:GROUP:#team_mate_index:NAME, 0)"
1733 <!-- links to display the name of the team mate -->
1734 <link expr="depends(@SERVER:GROUP:#team_mate_index:NAME)"
1735 action="set_server_id"
1736 params="value=@SERVER:GROUP:#team_mate_index:NAME|target=uc_title|remove_title=1" />
1737 <!-- links to change the name color if it is the target -->
1738 <link expr="ifthenelse(eq(@SERVER:GROUP:#team_mate_index:UID,@UI:VARIABLES:TARGET:UID),
1741 target="title_color" />
1742 <!-- links to Open a Quick Help when a new team member comes. Only if the team_list window is not opeded -->
1743 <link expr="depends(@SERVER:GROUP:#team_mate_index:PRESENT)"
1744 action="context_help_html"
1746 cond="and(@SERVER:GROUP:#team_mate_index:PRESENT,eq(@UI:VARIABLES:ISACTIVE:TEAM_LIST,0))" />
1749 <!-- ******************** -->
1750 <!-- * CONTACT TEMPLATE * -->
1751 <!-- ******************** -->
1752 <!-- a contact of the ignore list -->
1753 <template name="contact_id_ignore"
1759 <group type="container"
1762 posparent="#posparent"
1764 title_opened="#title"
1767 movable_in_parent_list="true"
1768 header_color="UI:SAVE:WIN:COLORS:COM">
1769 <group id="header_closed"
1779 texture="w_answer_16_cancel.tga"
1780 global_color="false"
1785 <!-- a contact of the friend list -->
1786 <template name="contact_id_friend"
1792 <group type="container"
1795 posparent="#posparent"
1799 open_when_popup="true"
1804 header_color="UI:SAVE:WIN:COLORS:COM"
1805 global_color="false"
1806 global_color_over="true"
1808 movable_in_parent_list="true">
1809 <group id="header_closed"
1814 group_onclick_l="tell_contact">
1817 button_type="push_button"
1820 tx_normal="contact_chat.tga"
1821 tx_pushed="contact_chat.tga"
1822 tx_over="W_button_14_over.tga"
1823 global_color_normal="false"
1824 global_color_over="true"
1825 global_color_pushed="false"
1826 onclick_l="contact_direct_chat"
1828 tooltip_parent="win" />
1833 texture="w_online.tga"
1834 global_color="false" />
1835 <ctrl type="tooltip"
1844 tooltip="uittFriendsOnline"
1845 tooltip_parent="win" />
1848 button_type="push_button"
1854 global_color_normal="false"
1855 global_color_over="false"
1856 global_color_pushed="false"
1857 onclick_l="open_title_help"
1858 params_l="a teamInvite contact"
1859 tooltip="uittContactInfo"
1860 tooltip_parent="win" />
1861 <!-- add team invite button -->
1864 button_type="push_button"
1868 tx_pushed="invt.tga"
1870 global_color_normal="false"
1871 global_color_over="false"
1872 global_color_pushed="false"
1873 onclick_l="lua:game:teamInvite('#id')"
1874 tooltip="uimGcmInvit"
1875 tooltip_parent="win" />
1876 <link expr="depends(@UI:VARIABLES:PING)" action="lua" params="game:updateFLinvB('#id')" />
1882 texture="w_answer_16_cancel.tga"
1883 global_color="false"
1889 <!-- when you want to directly chat with a friend -->
1890 <template name="contact_chat_friend"
1896 <group type="container"
1902 posparent="#posparent"
1913 header_color="UI:SAVE:WIN:COLORS:COM"
1914 global_color="false"
1915 global_color_over="true">
1916 <group id="header_closed"
1922 on_active_params="game:closeTellHeader('#id')">
1924 <group id="header_opened"
1931 on_active_params="game:openTellHeader('#id')">
1932 <ctrl style="button_ok"
1941 params_l="validMessageBox(i18n.get('uiAddTellerToIgnoreListWarning'), 'add_teller_to_ignore_list', 'id=ui:interface:#id', '', '' ,'ui:interface')"
1942 hardtext="uiAddTellerToIgnoreList"
1944 tooltip="uiAddTellerToIgnoreListTooltip"
1945 tooltip_parent="win" />
1946 <ctrl style="button_ok"
1954 onclick_l="add_teller_to_friend_list"
1956 hardtext="uiAddTellerToFriends"
1958 tooltip="uiAddTellerToFriendsToolip"
1959 tooltip_parent="win" />
1960 <ctrl style="button_ok"
1966 posparent="new_friend"
1968 onclick_l="lua:game:teamInvite('#id')"
1970 hardtext="uiInviteToRingSession"
1972 tooltip="uimGcmInvit"
1973 tooltip_parent="win" />
1981 <instance template="chat_box"
1988 <instance template="edit_box_widget"
1993 child_resize_h="true"
1996 onenter="contact_entry"
1997 backup_father_container_pos="true" />
2001 <!-- *************************** -->
2002 <!-- * BASE MENU FOR CHAT BOX * -->
2003 <!-- *************************** -->
2004 <!-- allow to create a party chat from any chat box -->
2006 id="base_chat_box_menu"
2007 extends="base_menu_with_color">
2010 <!-- allow to create a party chat from any chat box & to hide / show the edit box -->
2012 id="base_chat_box_menu_with_eb_toggle"
2013 extends="base_chat_box_menu">
2014 <action id="toggle_chat_eb_vis"
2015 name="uimToggleChatEBVis"
2016 handler="toggle_chat_eb_vis"
2020 <!-- MainChat Group menu. Code appends entries for selecting chat source (if tab is user chat) -->
2021 <template name="chat_menu_button"
2033 button_type="toggle_button"
2038 tx_normal="w_slot_on.tga"
2039 tx_pushed="w_opacity_on.tga"
2040 tx_over="w_slot_on.tga"
2041 color="255 255 255 255"
2042 col_pushed="255 255 255 255"
2043 col_over="255 255 255 0"
2044 onclick_l="lua:game:switchChatTab('#chat_db')" />
2045 <link expr="@UI:SAVE:ISENABLED:#chat_db"
2046 target="button:pushed" />
2050 id="main_chat_source_menu"
2051 extends="base_menu_with_color">
2057 usergroup_l="chat_menu_button"
2058 usergroup_params_l="chat_db=AROUND_ME" />
2061 usergroup_l="chat_menu_button"
2062 usergroup_params_l="chat_db=REGION_CHAT" />
2065 usergroup_l="chat_menu_button"
2066 usergroup_params_l="chat_db=TEAM_CHAT" />
2069 usergroup_l="chat_menu_button"
2070 usergroup_params_l="chat_db=GUILD_CHAT" />
2071 <action id="universe"
2073 usergroup_l="chat_menu_button"
2074 usergroup_params_l="chat_db=UNIVERSE_CHAT" />
2077 usergroup_l="chat_menu_button"
2078 usergroup_params_l="chat_db=SYSTEM_INFO" />
2079 <!-- Bit of a hack as vector is not supported inside a submenu -->
2082 usergroup_l="chat_menu_button"
2083 usergroup_params_l="chat_db=DYNAMIC_CHAT0" />
2086 usergroup_l="chat_menu_button"
2087 usergroup_params_l="chat_db=DYNAMIC_CHAT1" />
2090 usergroup_l="chat_menu_button"
2091 usergroup_params_l="chat_db=DYNAMIC_CHAT2" />
2094 usergroup_l="chat_menu_button"
2095 usergroup_params_l="chat_db=DYNAMIC_CHAT3" />
2098 usergroup_l="chat_menu_button"
2099 usergroup_params_l="chat_db=DYNAMIC_CHAT4" />
2102 usergroup_l="chat_menu_button"
2103 usergroup_params_l="chat_db=DYNAMIC_CHAT5" />
2106 usergroup_l="chat_menu_button"
2107 usergroup_params_l="chat_db=DYNAMIC_CHAT6" />
2110 usergroup_l="chat_menu_button"
2111 usergroup_params_l="chat_db=DYNAMIC_CHAT7" />
2115 <!-- User Chat menu. Code append entries for selecting chat source -->
2117 id="user_chat_source_menu"
2118 extends="base_menu_with_color">
2121 <!-- Standard Chat menu (used for region, team, etc..) -->
2123 id="std_chat_source_menu"
2124 extends="base_menu_with_color">
2127 <!-- ****************** -->
2128 <!-- * AROUND ME CHAT * -->
2129 <!-- ****************** -->
2130 <!-- Menu to select the target -->
2132 id="around_me_target_menu"
2133 extends="base_menu">
2134 <action id="team_target"
2136 handler="chat_target_selected"
2138 <action id="team_target"
2140 handler="chat_target_selected"
2143 <template name="around_me_id"
2149 <group type="container"
2152 posparent="#posparent"
2156 open_when_popup="true"
2161 header_color="UI:SAVE:WIN:COLORS:COM"
2162 global_color="false"
2163 global_color_over="true"
2165 <group id="header_closed"
2170 group_onclick_r="active_menu"
2171 group_params_r="menu=ui:interface:base_chat_box_menu_with_eb_toggle">
2173 <group id="header_opened"
2179 group_onclick_r="active_menu"
2180 group_params_r="menu=ui:interface:base_chat_box_menu_with_eb_toggle">
2187 <instance template="chat_box"
2194 <!-- display of filters -->
2197 button_type="push_button"
2202 tx_normal="W_arrow_up_0.tga"
2203 tx_pushed="W_arrow_up_0.tga"
2204 tx_over="W_button_16_over.tga"
2205 color="255 255 255 128"
2206 col_pushed="255 255 255 255"
2207 onclick_l="select_chat_target"
2208 params_l="menu=ui:interface:around_me_target_menu|party_chats=false" />
2209 <instance template="edit_box_widget"
2214 child_resize_h="true"
2217 onenter="chat_box_entry"
2218 backup_father_container_pos="true" />
2222 <!-- ************** -->
2223 <!-- * TEAM MENU * -->
2224 <!-- ************** -->
2225 <!-- menu on a member of the team for the leader -->
2227 id="team_member_menu"
2228 extends="base_menu_with_color">
2229 <action id="dismiss"
2231 handler="dismiss_member"
2234 name="uimSetTeamLeader"
2235 handler="set_team_leader"
2237 <action id="successor"
2238 name="uimSetSuccesor"
2239 handler="set_successor"
2241 <!-- <action id="emote" name="uimEmotes" hanlder="" params="">
2242 <action id="emote1" name="uimEmote1" handler="emote" params="emote_id=0"/>
2243 <action id="emote2" name="uimEmote2" handler="emote" params="emote_id=1"/>
2244 <action id="emote3" name="uimEmote3" handler="emote" params="emote_id=2"/>
2245 <action id="emote4" name="uimEmote4" handler="emote" params="emote_id=3"/>
2246 <action id="emote5" name="uimEmote5" handler="emote" params="emote_id=4"/>
2247 <action id="emote6" name="uimEmote6" handler="emote" params="emote_id=5"/>
2248 <action id="emote7" name="uimEmote7" handler="emote" params="emote_id=6"/>
2250 <!-- <action id="commands" name="uimCommands" hanlder="" params="">
2251 <action id="command1" name="uimCommand1" handler="" params=""/>
2252 <action id="command2" name="uimCommand2" handler="" params=""/>
2253 <action id="command3" name="uimCommand3" handler="" params=""/>
2254 <action id="command4" name="uimCommand4" handler="" params=""/>
2255 <action id="command5" name="uimCommand5" handler="" params=""/>
2256 <action id="command6" name="uimCommand6" handler="" params=""/>
2260 handler="team_target"
2262 <action id="compass"
2263 name="uimTeamCompass"
2264 handler="set_team_compas"
2265 params="compass=ui:interface:compass" />
2268 <!-- links to enable leader options -->
2269 <link expr="eq(band(@SERVER:GROUP:LEADER_INDEX, 15), 15)"
2270 target="ui:interface:team_member_menu:dismiss:active" />
2271 <link expr="eq(band(@SERVER:GROUP:LEADER_INDEX, 15), 15)"
2272 target="ui:interface:team_member_menu:leader:active" />
2273 <link expr="eq(band(@SERVER:GROUP:LEADER_INDEX, 15), 15)"
2274 target="ui:interface:team_member_menu:successor:active" />
2275 <!-- menu on the chat of the team for the leader -->
2277 id="team_chat_leader_menu"
2278 extends="base_chat_box_menu_with_eb_toggle">
2283 <action id="share_seeds"
2284 name="uimSeedsSharing"
2285 hanlder="share_seeds"
2290 id="team_chat_member_menu"
2291 extends="base_chat_box_menu_with_eb_toggle">
2298 <!-- ***************** -->
2299 <!-- * CONTACT_MENU * -->
2300 <!-- ***************** -->
2302 id="friend_list_menu"
2304 extends="base_chat_box_menu_with_eb_toggle">
2307 handler="remove_contact"
2310 name="uimMoveToIgnoreList"
2311 handler="move_contact"
2316 id="friend_list_menu_offline_unblocked"
2317 extends="friend_list_menu">
2318 <!-- <action id="block" name="uimBlock" handler="block_contact" params=""/> -->
2321 id="friend_list_menu_online_unblocked"
2322 extends="friend_list_menu">
2325 handler="menu_tell_contact"
2327 <!-- <action id="block" name="uimBlock" handler="block_contact" params=""/> -->
2330 id="friend_list_menu_online_abroad_unblocked"
2331 extends="friend_list_menu">
2334 handler="menu_tell_contact"
2336 <!-- <action id="block" name="uimBlock" handler="block_contact" params=""/> -->
2339 id="friend_list_menu_offline_blocked"
2340 extends="friend_list_menu">
2341 <!-- <action id="block" name="uimUnBlock" handler="block_contact" params=""/> -->
2344 id="friend_list_menu_online_blocked"
2345 extends="friend_list_menu">
2348 handler="tell_contact"
2350 <!-- <action id="block" name="uimUnBlock" handler="block_contact" params=""/> -->
2353 id="friend_list_menu_online_abroad_blocked"
2354 extends="friend_list_menu">
2357 handler="tell_contact"
2359 <!-- <action id="block" name="uimUnBlock" handler="block_contact" params=""/> -->
2362 id="ignore_list_menu"
2363 extends="base_menu_with_color">
2366 handler="remove_contact"
2369 name="uimMoveToFriendList"
2370 handler="move_contact"
2374 <!-- menu for sorting -->
2377 extends="base_chat_box_menu">
2380 handler="sort_contacts"
2384 <!-- ******************** -->
2385 <!-- * PARTY CHAT MENU * -->
2386 <!-- ******************** -->
2388 id="party_chat_menu"
2389 extends="base_chat_box_menu_with_eb_toggle">
2390 <action id="remove_party_chat"
2391 name="uimRemovePartyChat"
2392 handler="remove_party_chat"
2394 <action id="invite_party_chat"
2396 handler="party_chat_invite"
2400 <!-- ************************************ -->
2401 <!-- * PARTY CHAT MENU FOR GUILD CHIEF * -->
2402 <!-- ************************************ -->
2404 id="guild_chief_party_chat_menu"
2405 extends="party_chat_menu">
2406 <action id="add_all_guild_members"
2408 handler="add_all_guild_members"
2410 <action id="remove_all_guild_members"
2411 name="uimRemoveAllGM"
2412 handler="remove_all_guild_members"
2416 <!-- ************************************ -->
2417 <!-- * PARTY CHAT MENU FOR TEAM CHIEF * -->
2418 <!-- ************************************ -->
2420 id="team_chief_party_chat_menu"
2421 extends="party_chat_menu">
2422 <action id="add_all_team_members"
2424 handler="add_all_team_members"
2426 <action id="remove_all_team_members"
2427 name="uimRemoveAllTM"
2428 handler="remove_all_team_members"
2432 <!-- ******************************************* -->
2433 <!-- * PARTY CHAT MENU FOR GUILD & TEAM CHIEF * -->
2434 <!-- ******************************************* -->
2436 id="team_and_guild_chief_party_chat_menu"
2437 extends="team_chief_party_chat_menu">
2438 <action id="add_all_guild_members"
2440 handler="add_all_guild_members"
2442 <action id="remove_all_guild_members"
2443 name="uimRemoveAllGM"
2444 handler="remove_all_guild_members"
2448 <!-- ****************************************************** -->
2449 <!-- * WINDOW TO ASK IF A PLAYER WANT TO JOIN A TEAM * -->
2450 <!-- ****************************************************** -->
2451 <!-- the modal. WARNING: change the "line_maxw" below if change the container w -->
2452 <group style="container_proposal"
2453 id="join_team_proposal"
2454 on_close_button="lua:game:teamInvitationRefuse()"
2455 title_opened="uiJoinTeamProposal">
2457 child_resize_h="true"
2458 child_resize_hmargin="10">
2463 child_resize_h="true"
2464 child_resize_hmargin="6">
2465 <view type="text_id"
2470 color="255 255 255 255"
2474 multi_line_space="0"
2477 <instance template="button_ok_cancel"
2483 cancel_text="uiDecline"
2484 onclick_ok="lua:game:teamInvitationAccept()"
2486 onclick_cancel="lua:game:teamInvitationRefuse()"
2487 onclick_cancel_param="" />
2490 <tree node="join_team_proposal" />
2491 <!-- ****************************************************** -->
2492 <!-- * WINDOW TO ASK IF A PLAYER WANT TO JOIN A GUILD * -->
2493 <!-- ****************************************************** -->
2494 <!-- the modal dont mess up with ids they are used in code -->
2495 <group style="container_proposal"
2496 id="join_guild_proposal"
2497 on_close_button="refuse_guild_invitation"
2498 title_opened="uiJoinGuildProposal">
2500 child_resize_h="true"
2501 child_resize_hmargin="10">
2506 child_resize_h="true"
2507 child_resize_hmargin="6">
2513 color="255 255 255 255"
2517 multi_line_space="0"
2520 <instance template="button_ok_cancel"
2526 cancel_text="uiDecline"
2527 onclick_ok="accept_guild_invitation"
2529 onclick_cancel="refuse_guild_invitation"
2530 onclick_cancel_param="" />
2533 <tree node="join_guild_proposal" />
2534 <!-- ************************************************************** -->
2535 <!-- * WINDOW TO ASK IF A PLAYER WANT TO DUEL WITH ANOTHER PLAYER * -->
2536 <!-- ************************************************************** -->
2537 <!-- the modal. WARNING: change the "line_maxw" below if change the container w -->
2538 <group style="container_proposal"
2539 id="join_duel_proposal"
2541 right_button="false"
2542 on_close_button="refuse_duel_invitation"
2543 header_active="false">
2547 color="233 197 42 255"
2551 global_color="false"
2553 hardtext="uiJoinDuelProposal" />
2560 global_color="false"
2561 texture="w_warning.tga" />
2563 child_resize_h="true"
2564 child_resize_hmargin="10">
2569 child_resize_h="true"
2570 child_resize_hmargin="6">
2571 <view type="text_id"
2576 color="255 255 255 255"
2580 multi_line_space="0"
2583 <instance template="button_ok_cancel"
2589 cancel_text="uiDecline"
2590 onclick_ok="accept_duel_invitation"
2592 onclick_cancel="refuse_duel_invitation"
2593 onclick_cancel_param="" />
2596 <tree node="join_duel_proposal" />
2597 <!-- ***************************************** -->
2598 <!-- * WINDOW TO ASK IF A PLAYER WANT TO PVP * -->
2599 <!-- ***************************************** -->
2600 <!-- the modal. WARNING: change the "line_maxw" below if change the container w -->
2601 <group style="container_proposal"
2602 id="join_pvp_challenge_proposal"
2604 right_button="false"
2605 on_close_button="refuse_duel_invitation"
2606 header_active="false">
2610 color="42 197 233 255"
2614 global_color="false"
2616 hardtext="uiJoinLeagueProposal" />
2618 child_resize_h="true"
2619 child_resize_hmargin="10">
2624 child_resize_h="true"
2625 child_resize_hmargin="6">
2626 <view type="text_id"
2631 color="255 255 255 255"
2635 multi_line_space="0"
2638 <instance template="button_ok_cancel"
2644 cancel_text="uiDecline"
2645 onclick_ok="accept_pvp_challenge_invitation"
2647 onclick_cancel="refuse_pvp_challenge_invitation"
2648 onclick_cancel_param="" />
2651 <tree node="join_pvp_challenge_proposal" />
2652 <!-- *********************************************** -->
2653 <!-- * WINDOW TO ASK CLAN PLAYER WANT JOIN FOR PVP * -->
2654 <!-- *********************************************** -->
2655 <!-- the modal. WARNING: change the "line_maxw" below if change the container w -->
2656 <group style="container_proposal"
2657 id="join_pvp_clan_proposal"
2658 right_button="false"
2659 header_active="false">
2663 color="233 197 42 255"
2667 global_color="false"
2669 hardtext="uiJoinClanProposalTitle" />
2676 global_color="false"
2677 texture="w_warning.tga" />
2679 child_resize_h="true"
2680 child_resize_hmargin="10">
2685 child_resize_h="true"
2686 child_resize_hmargin="6">
2692 color="255 255 255 255"
2696 multi_line_space="0"
2698 hardtext="uiJoinClanProposalDesc" />
2700 <ctrl style="text_button_16"
2704 onclick_l="pvp_clan_join"
2706 hardtext="uiPvpClanNeutral" />
2707 <ctrl style="text_button_16"
2711 onclick_l="pvp_clan_join"
2713 <ctrl style="text_button_16"
2717 onclick_l="pvp_clan_join"
2721 <tree node="join_pvp_clan_proposal" />
2722 <!-- ****************************************************** -->
2723 <!-- * POPUP TO ASK IF A PLAYER WANT TO JOIN A PARTY CHAT * -->
2724 <!-- ****************************************************** -->
2725 <!-- TODO convert this to a container -->
2726 <group id="join_party_chat_dialog"
2728 exit_click_out="true"
2733 options="skin_modal">
2738 color="255 255 255 255"
2741 hardtext="uiJoinChatQuestion" />
2742 <group id="indent_middle"
2743 child_resize_w="true"
2744 child_resize_h="true"
2747 <instance template="button_ok_cancel"
2750 cancel_text="uiDecline"
2754 onclick_cancel_param="" />
2757 <!-- ****************************************************************** -->
2758 <!-- * POPUP TO ASK IF A PLAYER WANT TO ENTER A MISSION CRITICAL ZONE * -->
2759 <!-- ****************************************************************** -->
2760 <group style="container_proposal"
2761 id="enter_crzone_proposal"
2762 right_button="false"
2763 header_active="false">
2765 child_resize_h="true"
2766 child_resize_hmargin="10">
2771 child_resize_h="true"
2772 child_resize_hmargin="6">
2773 <view type="text_id"
2778 color="255 255 255 255"
2782 multi_line_space="0"
2785 <instance template="button_ok_cancel"
2791 cancel_text="uiDecline"
2792 onclick_ok="enter_crzone"
2793 onclick_ok_param="1"
2794 onclick_cancel="enter_crzone"
2795 onclick_cancel_param="0" />
2798 <tree node="enter_crzone_proposal" />
2799 <!-- *************************************************** -->
2800 <!-- * POPUP TO ASK THE PLAYER FOR A TELEPORT LOCATION * -->
2801 <!-- *************************************************** -->
2802 <proc id="proc_teleport">
2803 <action handler="ascensor_teleport" />
2804 <action handler="list_sheet_text_reset_selection"
2805 params="ui:interface:ascensor_teleport_list:header_opened:list_of_items:all_items" />
2806 <action handler="set"
2807 params="target_property=ui:interface:ascensor_teleport_list:active|value=0" />
2808 <action handler="set_compass_north"
2809 params="compass=ui:interface:compass" />
2811 <group id="ascensor_teleport_list"
2824 global_color="false"
2828 title="uiAscensorTeleportList"
2829 header_color="UI:SAVE:WIN:COLORS:BOT">
2830 <group id="header_opened"
2831 child_resize_h="true"
2836 <!-- 2/ LIST OF ITEMS / BRICK / PACTS / SKILLS -->
2837 <group id="list_of_items"
2852 texture="W_line_hor.tga" />
2853 <!-- text depending on the type of items -->
2860 color="255 255 255 255"
2863 hardtext="uiTeleportLocation"
2864 global_color="false"
2866 <!-- The H should be "32+hspace" * Number of rows. Setup list.max_h too below-->
2867 <group type="list_sheet_guild"
2882 value="LOCAL:ASCENSOR"
2883 selection_group="teleport_selection"
2885 nature="elevator_destination"
2887 params_l="proc_teleport"
2889 over_color="%bot_chat_sheet_selection_normal"
2890 over_col_pushed="%bot_chat_sheet_selection_pushed"
2891 over_col_over="%bot_chat_sheet_selection_over"
2892 color="255 255 255 255"
2896 multi_line_space="0">
2898 <ctrl style="skin_scroll"
2901 <!-- the group to scroll -->
2914 <tree node="ascensor_teleport_list" />
2919 <instance template="chat_id" id="chat1" title="LEMUEL" />
2920 <instance template="chat_id" id="chat2" title="CYRIL" />
2922 <instance template="mate_id" id="mate1" title="NICOLAS" />
2923 <instance template="mate_id" id="mate2" title="MATTHIEU" />
2924 <instance template="mate_id" id="mate3" title="LIONEL" />
2926 <instance template="contact_id" id="contact1" title="CYRIL" />
2927 <instance template="contact_id" id="contact2" title="LEMUEL" />
2928 <instance template="contact_id" id="contact3" title="LIONEL" />
2929 <instance template="contact_id" id="contact4" title="MATTHIEU" />
2930 <instance template="contact_id" id="contact5" title="NICOLAS" />
2932 <instance template="contact_id" id="ignore1" title="DON'T" />
2933 <instance template="contact_id" id="ignore2" title="TALK" />
2934 <instance template="contact_id" id="ignore3" title="2 ME" />
2936 <!-- ******************* -->
2937 <!-- * SYSTEM INFOS * -->
2938 <!-- ******************* -->
2940 <group type="container" id="system_info" x="0" y="0" w="176" posref="TL TL" title="" title_opened="uiSystemInfoTitle" >
2942 <group id="header_closed" x="0" y="0" w="176" h="16" posref="TL TL" >
2943 <group id="pipo" posref="MR MR" sizeref="w" w="-24" h="16" >
2944 <instance template="chat_box" id="cb" posref="BR BR" sizeref="w" w="12" h="28" min_height="28" max_height="28"/>
2946 <view type="bitmap" id="logo" posparent="pipo" posref="TL TR" x="-2" texture="W_user_info.tga" />
2949 <group id="header_opened" x="0" y="0" w="176" h="64" posref="TL TL" child_resize_h="true" child_resize_hmargin="8" >
2950 <instance template="chat_box" id="cb" posref="TR TR" sizeref="w" y="-4" w="-8" h="64" min_height="64" max_height="256"/>
2953 <group id="content" x="0" y="0" w="168" h="0" posref="TL TL" >
2962 <group type="container" id="guild" x="" y="" w="176" posref="TR TR" title="uiGuildChat" title_opened="uiGuildChat" >
2964 <group id="header_closed" x="0" y="0" h="16" posref="TL TL" >
2967 <group id="header_opened" x="0" y="0" w="176" h="64" posref="TL TL" child_resize_h="true" child_resize_hmargin="8" >
2968 <instance template="chat_box" id="cb" posref="TR TR" sizeref="w" y="-4" w="-8" h="64" min_height="64" max_height="256"/>
2969 <instance template="edit_box_widget" id="ebw" posref="BR TR" y="-4" posparent="cb" child_resize_h="true" sizeref="w" w="-12" onenter="chat_box_entry" backup_father_container_pos="true"/>
2972 <group id="content" x="0" y="0" h="0" posref="TL TL" >
2981 <group type="container" id="team" x="" y="" w="176" posref="TR TR" title="uiTeamChatTitle" title_opened="uiTeamChatTitle" >
2983 <group id="header_closed" x="0" y="0" h="16" posref="TL TL" >
2984 <view type="bitmap" id="lead" posref="TL TL" x="48" texture="w_leader.tga" global_color="false" />
2987 <group id="header_opened" x="0" y="0" w="176" h="64" posref="TL TL" child_resize_h="true" child_resize_hmargin="8" >
2988 <view type="bitmap" id="lead" posref="TL TL" x="48" texture="w_leader.tga" global_color="false" />
2989 <instance template="chat_box" id="cb" posref="TR TR" sizeref="w" y="-4" w="-8" h="64" min_height="64" max_height="256"/>
2990 <instance template="edit_box_widget" id="ebw" posref="BR TR" y="-4" posparent="cb" child_resize_h="true" sizeref="w" w="-12" onenter="chat_box_entry" backup_father_container_pos="true"/>
2993 <group id="content" x="0" y="0" h="0" posref="TL TL" >
2998 <!-- ************** -->
2999 <!-- * PARTY CHAT * -->
3000 <!-- ************** -->
3002 <group type="container" id="party" x="" y="" w="176" posref="TR TR" title="PARTY CHAT" title_opened="PARTY CHAT" >
3004 <group id="header_closed" x="0" y="0" h="16" posref="TL TL" >
3007 <group id="header_opened" x="0" y="0" w="176" h="64" posref="TL TL" child_resize_h="true" child_resize_hmargin="8" >
3008 <instance template="chat_box" id="cb" posref="TR TR" sizeref="w" y="-4" w="-8" h="64" min_height="64" max_height="256"/>
3009 <instance template="edit_box_widget" id="ebw" posref="BR TR" y="-4" posparent="cb" child_resize_h="true" sizeref="w" w="-12" onenter="chat_box_entry" backup_father_container_pos="true"/>
3012 <group id="content" x="0" y="0" h="0" posref="TL TL" >
3017 <!-- ************* -->
3018 <!-- * AROUND ME * -->
3019 <!-- ************* -->
3021 <group type="container" id="around" x="" y="" w="176" posref="TR TR" title="uiAroundMeTitle" title_opened="uiAroundMeTitle" >
3023 <group id="header_closed" x="0" y="0" h="16" posref="TL TL" >
3026 <group id="header_opened" x="0" y="0" w="176" h="64" posref="TL TL" child_resize_h="true" child_resize_hmargin="8" >
3027 <instance template="chat_box" id="cb" posref="TR TR" sizeref="w" y="-4" w="-8" h="64" min_height="64" max_height="256"/>
3030 <group id="content" x="0" y="0" h="0" posref="TL TL" >
3035 <!-- **************** -->
3036 <!-- * CONTACT LIST * -->
3037 <!-- **************** -->
3038 <group type="container"
3041 title="uiContactListTitle"
3049 on_active_params="dblink=UI:VARIABLES:ISACTIVE:CONTACT_LIST|value=1"
3051 on_deactive_params="dblink=UI:VARIABLES:ISACTIVE:CONTACT_LIST|value=0"
3052 header_color="UI:SAVE:WIN:COLORS:COM"
3053 global_color="false"
3054 global_color_over="true">
3055 <group id="header_closed"
3059 posref="TL TL"></group>
3060 <group id="header_opened"
3065 posref="TL TL"></group>
3070 posref="TL TL"></group>
3072 <tree node="contact_list">
3073 <!-- friend_list node created in code -->
3074 <!-- ignore_list node created in code -->
3076 <!-- *************** -->
3077 <!-- * IGNORE LIST * -->
3078 <!-- *************** -->
3080 <group type="container" id="ignore" x="" y="" w="176" posref="TR TR" title="uiIgnoreList" title_opened="uiIgnoreList" >
3082 <group id="header_closed" x="0" y="0" h="16" posref="TL TL" >
3085 <group id="header_opened" x="0" y="0" w="176" h="20" posref="TL TL" child_resize_h="true" child_resize_hmargin="8" >
3088 <group id="content" x="0" y="0" h="0" posref="TL TL" >
3093 <!-- ****************************************************** -->
3094 <!-- * WINDOW TO ENTER THE NAME OF A NEW PARTY CHAT * -->
3095 <!-- ****************************************************** -->
3096 <proc id="validate_party_chat_name_proc">
3097 <action handler="set"
3098 params="target_property=ui:interface:create_new_party_chat:active|value=0" />
3099 <action handler="validate_party_chat_name"
3102 <group id="create_new_party_chat"
3105 on_close_button="proc"
3106 on_close_button_params=""
3112 title_opened="uiCreateNewPartyChat"
3115 <group id="header_opened"
3118 child_resize_w="true"
3119 child_resize_h="true"
3126 color="255 255 255 255"
3129 hardtext="uiChannel" />
3130 <!-- the edit box -->
3131 <instance template="edit_box_widget"
3135 posparent="add_text"
3138 params="validate_party_chat_name_proc"
3139 entry_type="alpha" />
3141 <group id="indent_middle"
3143 child_resize_w="true"
3144 child_resize_h="true"
3147 <instance template="button_ok_cancel"
3150 onclick_ok_param="validate_party_chat_name_proc"
3151 onclick_cancel="set"
3152 onclick_cancel_param="target_property=ui:interface:create_new_party_chat:active|value=0" />
3156 <tree node="create_new_party_chat" />
3157 <!-- ***************** -->
3158 <!-- * DEBUG CONSOLE * -->
3159 <!-- ***************** -->
3161 <group type="container" id="debug_console" w="320" title="uiDebugConsole" global_color="false" open_button="false" force_open_out="true" header_color="UI:SAVE:WIN:COLORS:HELP"
3162 title_bar_open="false" min_w="216" min_h="64" max_w="2000"
3163 max_h="1600" pop_max_w="2000" pop_max_h="1600" lockable="true" openable="false" opened="true" movable="true" resizer="true" active="true">
3164 <group id="header_closed" x="0" y="0" h="12" posref="TL TL" >
3167 <group id="header_opened" x="0" y="0" w="160" h="13" posref="TL TL" child_resize_h="true" child_resize_hmargin="8" >
3168 <instance template="chat_box" id="cb" posref="TR TR" sizeref="w" y="-8" w="0" h="64" min_height="64" max_height="1600"/>
3169 <instance template="edit_box_widget" id="ebw" posref="BR TR" y="0" posparent="cb" child_resize_h="true" sizeref="w" w="-10" onenter="debug_console_entry" backup_father_container_pos="true"/>
3172 <group id="content" x="0" y="0" h="0" posref="TL TL" >
3176 <tree node="debug_console">
3179 <!-- **************** -->
3180 <!-- * DYNAMIC CHAT * -->
3181 <!-- **************** -->
3182 <!-- fct to know if a dynamic channel is writable -->
3183 <define id="canWriteToDynChat"
3184 value="ne(@SERVER:DYN_CHAT:CHANNEL#dyn_chat_nb:WRITE_RIGHT,0)" />
3185 <!-- template for a popuped dynamic chat window -->
3186 <template name="dynamic_chat_id"
3193 <group type="container"
3197 posparent="#posparent"
3198 title_class="text_dyn_string"
3199 title="SERVER:DYN_CHAT:CHANNEL#dyn_chat_nb:NAME"
3203 open_when_popup="true"
3204 header_color="UI:SAVE:WIN:COLORS:COM"
3205 global_color="false"
3206 global_color_over="true"
3212 <group id="header_closed"
3216 posref="TL TL"></group>
3217 <group id="header_opened"
3222 posref="TL TL"></group>
3229 <instance template="chat_box"
3236 <instance template="edit_box_widget"
3241 child_resize_h="true"
3244 onenter="chat_box_entry"
3245 backup_father_container_pos="true" />
3251 hardtext="uiCannotWriteDynChat"
3255 <link expr="%canWriteToDynChat"
3256 target="ebw:active" />
3257 <link expr="%canWriteToDynChat"
3258 target="ebw:eb:enter_recover_focus" />
3259 <!-- important else if press enter, then the edit box is reactivated! -->
3260 <link expr="not(%canWriteToDynChat)"
3261 target="cant_write_ebw:active" />
3263 <!-- Show this window if popuped and present -->
3264 <link expr="and(and(@UI:SAVE:ISENABLED:DYNAMIC_CHAT#dyn_chat_nb, ne(@SERVER:DYN_CHAT:CHANNEL#dyn_chat_nb:NAME,0)),
3265 @UI:SAVE:ISDETACHED:DYNAMIC_CHAT#dyn_chat_nb)"
3269 <!-- those proc have the index in db of the dyn_chat, in parameter @0 -->
3270 <proc id="dynamic_chat_proc_close">
3271 <!-- The window is closed by the user, change the associated DB flag -->
3272 <action handler="set"
3273 params="dblink=UI:SAVE:ISDETACHED:DYNAMIC_CHAT@0|value=0" />