vtourskin_backup 116 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995
  1. <krpano>
  2. <skin_settings maps="false" maps_type="bing" maps_bing_api_key="" maps_zoombuttons="false" gyro="true" webvr="true"
  3. littleplanetintro="false" title="false" thumbs="true" thumbs_width="120" thumbs_height="80"
  4. thumbs_padding="10" thumbs_crop="0|40|240|160" thumbs_opened="false" thumbs_text="true"
  5. thumbs_dragging="true" thumbs_onhoverscrolling="false" thumbs_scrollbuttons="false"
  6. thumbs_scrollindicator="false" thumbs_loop="false" tooltips_buttons="false" tooltips_thumbs="false"
  7. tooltips_hotspots="false" tooltips_mapspots="false" deeplinking="false" loadscene_flags="MERGE"
  8. loadscene_blend="OPENBLEND(0.5, 0.0, 0.75, 0.05, linear)"
  9. loadscene_blend_prev="SLIDEBLEND(0.5, 180, 0.75, linear)"
  10. loadscene_blend_next="SLIDEBLEND(0.5, 0, 0.75, linear)" loadingtext="载入中..." layout_width="100%"
  11. layout_maxwidth="100%" controlbar_width="100%" controlbar_height="0" controlbar_offset="0"
  12. controlbar_offset_closed="-40" controlbar_overlap.no-fractionalscaling="10"
  13. controlbar_overlap.fractionalscaling="0" design_skin_images="vtourskin.png" design_bgcolor="0x000000"
  14. design_bgalpha="0.5" design_bgborder="0" design_bgroundedge="1" design_bgshadow="0 4 10 0x000000 0.3"
  15. design_thumbborder_bgborder="3 0xFDE428 1.0" design_thumbborder_padding="2"
  16. design_thumbborder_bgroundedge="0" design_text_css="color:#FFFFFF; font-family:Arial;"
  17. design_text_shadow="1"/>
  18. <include url="%SWFPATH%/plugins/swipe_gallery.xml"/>
  19. <include url="%SWFPATH%/plugins/showtext.xml" />
  20. <vtourskinxmlpath url="./"/>
  21. <include url="%SWFPATH%/plugins/tooltip.xml"/>
  22. <settings name="auto_thumbs" thumb_size="84" thumb_background_size="90" thumb_spacing="14" left="0" right="0"
  23. bottom="5" albums_right="0"/>
  24. <events name="auto_thumbs" keep="true" onresize="resize_auto_thumbs()" onnewscene="update_active_thumb();"
  25. onxmlcomplete="ifnot(thumbs_intitialized, create_auto_thumbs(); setup_title(); set(thumbs_intitialized, true););"
  26. onmousedown="hide_container(get(layer[albums].current_container)); fadein_children(albums_scrollarea); set(layer[new_thumbs].visible, false); js(tourguishow()); set(layer[albums].current_container, null);"/>
  27. <layer name="thumbs_background" scalechildren="true" scale="1" type="container" align="leftbottom" x="0" y="-102"
  28. width="100%" height="102" maskchildren="false" bgcolor="0x000000" bgalpha="0.4" keep="true"
  29. state="closed" vr="false" ></layer>
  30. <layer name="auto_thumbs" type="container" keep="true" preload="true" scalechildren="true" scale="1"
  31. align="leftbottom" x="0" y="0" width="50%" height="160" maskchildren="false" bgcolor="0x000000"
  32. bgalpha="0.0" parent="thumbs_background">
  33. <layer
  34. name="searchscene"
  35. keep="true"
  36. style="iconstyle|tooltip"
  37. crop="500|500|100|80"
  38. tooltip="搜索场景"
  39. opened="false"
  40. visible="false"
  41. ondown="click_searchsceneXML()"
  42. y="90"
  43. x="0"
  44. edge="right"
  45. align="righttop"
  46. width="100"
  47. height="80"
  48. />
  49. <layer name="albums" scalechildren="true" scale="1" type="container" align="leftbottom" x="0" y="0" width="100%"
  50. height="160" maskchildren="false" bgcolor="0x000000" bgalpha="0.0"
  51. onout="delayedcall(disable_thumbs, .25, set(layer[new_thumbs].visible, false));">
  52. <layer name="albums_left_shadow" style="scroll_shadow" align="left" ox="-100%" rotate="180"/>
  53. <layer name="albums_right_shadow" style="scroll_shadow" align="right"/>
  54. <layer name="albums_scrollarea" style="scrollarea" width="0" align="center"
  55. onscroll="move_thumbs(); show_or_hide_shadows();"
  56. onout="delayedcall(fadein, .25, fadein_children(name))"></layer>
  57. </layer>
  58. <layer name="new_thumbs" scalechildren="true" scale="1" type="container" align="leftbottom" x="0" oy="0"
  59. width="100%" height="160" visible="false" maskchildren="false" bgcolor="0x000000" bgalpha="0.0"
  60. onover="stopdelayedcall(fadein); stopdelayedcall(disable_thumbs); set(visible, true);"
  61. onout="delayedcall(disable_thumbs, .25, set(layer[new_thumbs].visible, false));">
  62. <layer name="thumbs_left_shadow" style="scroll_shadow" align="left" ox="-100%" rotate="180"/>
  63. <layer name="thumbs_right_shadow" style="scroll_shadow" align="right"/>
  64. <layer name="thumbs_scrollarea" width="100%" style="scrollarea" maskchildren="false"
  65. onscroll="show_or_hide_shadows();"></layer>
  66. </layer>
  67. </layer>
  68. <style name="album_thumburl" align="leftbottom" keep="true" x="9" y="9"
  69. alpha="1" width="80" height="80"
  70. onclick="show_thumbs();"
  71. />
  72. <style name="album" url="%SWFPATH%/skin/group2.png" align="leftbottom" keep="true" oy="0" alpha="1" width="98" height="97" y="-3"
  73. blendmode="layer" as="album"
  74. ondown="layer[thumbs_scrollarea].scrolltocenter(0,0);" />
  75. <style type="container" name="thumb" align="leftbottom" bgcolor="0xffffff" bgalpha="0.5" bgborder="0" bgroundedge="2" bgshadow="" maskchildren="true" bgcapture="true" keep="true" width="90" height="90"
  76. onover="fadeout_siblings(name); fadeout_siblings(album);" blendmode="layer"
  77. onclick="loadscene(get(scene), null, MERGE, BLEND(1));if(parent == albums_scrollarea, hide_container(get(layer[albums].current_container)); );js(setUrl(get(scene)));"/>
  78. <style name="thumb_image" ox="0" oy="0" width="0" height="0" keep="true" enabled="false"/>
  79. <style name="thumbs_container" scalechildren="true" scale="1" type="container" align="leftbottom" x="0" y="-100"
  80. width="100%" height="100" maskchildren="false" bgcolor="0x000000" bgalpha="0.5" keep="true"
  81. visible="true" state="closed" vr="false"
  82. />
  83. <style name="sub_thumbs_container"
  84. direction="h" onloaded="setcenter(0,0);"
  85. scalechildren="true" scale="1" type="container" align="cneter" x="0" y="-5"
  86. height="100" maskchildren="false" keep="true" width="0"
  87. visible="true" state="closed" vr="false" onscroll="move_thumbs(); "
  88. />
  89. <style name="scrollarea" url="%SWFPATH%/plugins/scrollarea.swf" keep="true"
  90. alturl="%SWFPATH%/plugins/scrollarea.js" direction="h" onloaded="setcenter(0,0);"
  91. onhover_autoscrolling="true"/>
  92. <style name="thumbs_count" url="%SWFPATH%/plugins/textfield.swf" keep="true" scale="2" align="rightbottom" x="16"
  93. y="16" html="1" zorder="999999999" width="12" height="11" padding="0 3" roundedge="4" alpha=".95"
  94. shadow="0.01" shadowalpha=".3" embeddedfontsd="true" enabled="false" onloaded=""
  95. css="color:#777777;font-family: sans-serif;font-size: 14px;line-height: 23px;font-weight:400;text-align: center;"/>
  96. <style name="scrollarea" url="%SWFPATH%/plugins/scrollarea.swf" keep="true"
  97. alturl="%SWFPATH%/plugins/scrollarea.js" direction="h" onloaded="setcenter(0,0);"
  98. onhover_autoscrolling="false"/>
  99. <style name="thumbs_count" url="%SWFPATH%/plugins/textfield.swf" keep="true" scale="2" align="rightbottom" x="16"
  100. y="16" html="1" zorder="999999999" width="12" height="11" padding="0 3" roundedge="4" alpha=".95"
  101. shadow="0.01" shadowalpha=".3" embeddedfontsd="true" enabled="false" onloaded=""
  102. css="color:#777777;font-family: sans-serif;font-size: 14px;line-height: 23px;font-weight:400;text-align: center;"/>
  103. <style name="scroll_shadow" url="%SWFPATH%/skin/shadow.png" keep="true" x="0" y="0" zorder="99"/>
  104. <!-- 光鱼 -->
  105. <style name="btn_over_style" onover="set(alpha,0.8);" onout="set(alpha,1.0);" />
  106. <style name="group_btn_style" url="%SWFPATH%/skin/bg-group.png" keep="true" align="leftcenter" crop="0|0|80|30" />
  107. <style name="group_comtainer_style" devices="mobile" y="206" />
  108. <style name="group_comtainer_style" devices="!mobile" y="200" />
  109. <textstyle name="tooltipTextStyle"
  110. font="STXihei" fontsize.no-mobile="14" fontsize.mobile="18" bold="false"
  111. background="true" backgroundcolor="0x000000" backgroundalpha="0.667"
  112. border="true" borderwidth="2" bordercolor="0xFFFFFF" roundedge="5"
  113. textcolor="0xFFFFFF"
  114. padding="6 10"
  115. textalign="center"
  116. yoffset.no-touch="-5"
  117. yoffset.touch="-40"
  118. />
  119. <!-- 缩略图container -->
  120. <style name="thumb_image_title_container"
  121. type="container"
  122. bgcolor="0x000000"
  123. bgalpha="0.5"
  124. y="32"
  125. height="20"
  126. width="100%"
  127. keep="true"
  128. align="center"
  129. />
  130. <!-- 缩略图名称 -->
  131. <style name="thumb_image_title_word"
  132. url="%SWFPATH%/plugins/textfield.swf"
  133. background="false"
  134. css="color:#FFFFFF;line-height:16px;font-size:12px;text-align:center"
  135. enabled="false"
  136. width="100%"
  137. keep="true"
  138. height="20"
  139. />
  140. <style name="thumb_image_title_wordnew"
  141. url="%SWFPATH%/plugins/textfield.swf"
  142. background="false"
  143. css="line-height:16px;font-size:12px;text-align:center"
  144. enabled="false"
  145. width="100%"
  146. keep="true"
  147. height="20"
  148. onover="set(css,'color:0x000000;');"
  149. onout="set(css,'color:#FFFFFF;');"
  150. vcenter="true"
  151. />
  152. <style name="skin_style" url="%SWFPATH%/skin/skin_v6_1.png"/>
  153. <action name="skin_scene_info">
  154. if(preloading_title_close EQ 1,,
  155. if(%1==true,txtadd(currscenename,'',get(scene[get(xml.scene)].title)); set(layer[top_scene_name].html,get(currscenename)); stoptween(layer[top_scene_name].y); tween(layer[top_scene_name].y,80,1.5,easeOutQuint); stopdelayedcall(nametimer); delayedcall(nametimer,6, tween(layer[top_scene_name].y,-50,1.5,easeOutQuint); );,set(layer[top_scene_name].y,-50);); );
  156. </action>
  157. <action name="click_searchsceneXML">
  158. js(click_searchscene());
  159. set(layer[searchscene].visible,false);
  160. </action>
  161. <action name="click_searchsceneTopano">
  162. loadscene(%1,null,get(skin_settings.loadscene_flags),get(skin_settings.loadscene_blend));
  163. </action>
  164. <action name="closeSceneName">
  165. set(layer[top_scene_name].visible,false );
  166. </action>
  167. <action name="create_auto_thumbs">
  168. if (scene.count GT 1
  169. ,
  170. copy(thumb_size,settings[auto_thumbs].thumb_background_size);
  171. copy(thumb_image_size, settings[auto_thumbs].thumb_size);
  172. copy(style[thumb_image].width, thumb_image_size);
  173. copy(style[thumb_image].height, thumb_image_size);
  174. copy(style[thumb_image].oy, thumb_size);
  175. sub(style[thumb_image].oy, thumb_image_size);
  176. div(style[thumb_image].oy, 2);
  177. copy(style[thumb_image].ox,style[thumb_image].oy);
  178. copy(layer[thumbs_scrollarea].height, thumb_size);
  179. copy(layer[albums_scrollarea].height,thumb_size);
  180. copy(layer[albums].height, thumb_size);
  181. copy(layer[new_thumbs].height, thumb_size);
  182. copy(layer[new_thumbs].y,thumb_size);
  183. add(thumb_width, thumb_size, settings[auto_thumbs].thumb_spacing);
  184. set(album_index, 0);
  185. set(thumb_index, 0);
  186. for(set(i,0), i LT scene.count, inc(i)
  187. ,
  188. <!-- txtadd(album_image_name,'album_image_',get(i)); -->
  189. if(scene[0].album,
  190. if (scene[get(i)].album !== null
  191. ,
  192. txtadd(album_name,'album_',get(i));
  193. addlayer(get(album_name));
  194. layer[get(album_name)].loadstyle(album);
  195. set(layer[get(album_name)].parent, albums_scrollarea);
  196. set(layer[get(album_name)].album_index,get(album_index));
  197. mul(layer[get(album_name)].x, get(album_index),get(thumb_width));
  198. if(i==0, set(layer[get(album_name)].url,"%SWFPATH%/skin/group1.png"); );
  199. <!-- 缩略图 -->
  200. txtadd(album_thumburl,get(album_name),"_thumburl");
  201. addlayer(get(album_thumburl));
  202. layer[get(album_thumburl)].loadstyle(album_thumburl);
  203. set(layer[get(album_thumburl)].parent,get(album_name));
  204. set(layer[get(album_thumburl)].url,get(scene[get(i)].thumburl));
  205. <!-- 缩略图标题 -->
  206. txtadd(album_title_con,'album_title_con_',get(i));
  207. addlayer(get(album_title_con));
  208. layer[get(album_title_con)].loadstyle(thumb_image_title_container);
  209. set(layer[get(album_title_con)].parent, get(album_thumburl));
  210. set(layer[get(album_title_con)].y, 30);
  211. txtadd(album_title_word,'album_title_word_',get(i));
  212. addlayer(get(album_title_word));
  213. set(layer[get(album_title_word)].html, get(scene[get(i)].album));
  214. layer[get(album_title_word)].loadstyle(thumb_image_title_word);
  215. set(layer[get(album_title_word)].parent, get(album_title_con));
  216. add(layer[albums_scrollarea].width, get(thumb_width));
  217. txtadd(container_name,get(album_name), '_container');
  218. set(layer[get(album_thumburl)].container, get(container_name));
  219. inc(album_index);
  220. <!-- txtadd(container_name, get(album_name),'_container'); -->
  221. addlayer(get(container_name));
  222. layer[get(container_name)].loadstyle(thumbs_container);
  223. <!-- set(layer[get(container_name)].style,thumbs_container); -->
  224. set(layer[get(container_name)].album,get(album_name));
  225. txtadd(scroll_sub_container,get(container_name),'_scroll');
  226. addlayer(get(scroll_sub_container));
  227. layer[get(scroll_sub_container)].loadstyle(sub_thumbs_container);
  228. if(device.flash,
  229. set(layer[get(scroll_sub_container)].url,'%SWFPATH%/plugins/scrollarea.swf');
  230. ,
  231. set(layer[get(scroll_sub_container)].url,'%SWFPATH%/plugins/scrollarea.js');
  232. );
  233. set(layer[get(scroll_sub_container)].parent,get(container_name));
  234. set(thumb_index, 0);
  235. );
  236. create_thumb();
  237. set(layer[get(thumb_name)].parent, get(scroll_sub_container));
  238. add(layer[get(scroll_sub_container)].width, get(thumb_width));
  239. ,
  240. <!-- jscall(calc('console.log("krpano version: ")')); -->
  241. create_thumb();
  242. set(layer[get(thumb_name)].parent,albums_scrollarea);
  243. add(layer[albums_scrollarea].width, get(thumb_width));
  244. ); <!--if 结束-->
  245. ); <!--for 结束-->
  246. trace(layer[albums].width);
  247. trace(layer[auto_thumbs].width);
  248. trace(layer[auto_thumbs].pixelwidth);
  249. trace(layer[auto_thumbs].pixelheight);
  250. );
  251. if(settings[auto_thumbs].onstart, settings[auto_thumbs].onstart(); );
  252. </action>
  253. <action name="skin_thumb_current">set(layer[current_thumb_%1].visible,true);</action>
  254. <action name="resize_auto_thumbs">
  255. copy(layer[auto_thumbs].width, area.pixelwidth);
  256. sub(layer[auto_thumbs].width,settings[auto_thumbs].left);
  257. sub(layer[auto_thumbs].width, settings[auto_thumbs].right);
  258. copy(layer[auto_thumbs].x, settings[auto_thumbs].left);
  259. copy(layer[auto_thumbs].y,settings[auto_thumbs].bottom);
  260. copy(layer[albums].width, layer[auto_thumbs].width);
  261. sub(layer[albums].width,settings[auto_thumbs].albums_right);
  262. add(layer[albums].width,settings[auto_thumbs].right);
  263. </action>
  264. <action name="hide_thumbs">delayedcall(get(container), 0, hide_container(get(container)); );</action>
  265. <action name="hide_container">tween(layer[%1].alpha, 0, .25, easeOutQuad, set(layer[%1].visible, false));
  266. tween(layer[thumbs_left_shadow].alpha, 0, .1); tween(layer[thumbs_right_shadow].alpha, 0, .1);
  267. </action>
  268. <action name="fadeout_siblings">for(set(i, 0), i LT layer.count, inc(i), if(layer[get(i)].parent ==
  269. layer[get(%1)].parent, if(layer[get(i)].parent == albums_scrollarea, if(scene[0].album, tween_alpha(get(i), .6);
  270. , tween_alpha(get(i), .85); ); , tween_alpha(get(i), .85); ); ) ); tween_alpha(get(%1), 1);
  271. </action>
  272. <action name="show_thumbs">
  273. stopdelayedcall(disable_thumbs);
  274. if(!last_parent,set(last_parent,'album_0'););
  275. set(layer[get(last_parent)].url,"%SWFPATH%/skin/bg2.png");
  276. if(container == last_show_sub_container AND layer[get(container)].state=='opened'
  277. ,
  278. set(layer[get(container)].state, 'closed');
  279. tween(layer[get(container)].y, -100, 0.5, easeOutQuint);
  280. <!-- set(layer[get(last_parent)].url,"%SWFPATH%/skin/group2.png"); -->
  281. ,
  282. if(layer[get(last_show_sub_container)].state=='opened',
  283. set(layer[get(last_show_sub_container)].state, 'closed');
  284. tween(layer[get(last_show_sub_container)].y, -100, 0.5, easeOutQuint);
  285. );
  286. if(layer[get(container)].state=='closed',
  287. set(layer[get(container)].state, 'opened');
  288. tween(layer[get(container)].y, 100.5, 0.5, easeOutQuint);
  289. <!--set(layer[skin_group].visible,true);
  290. set(layer[skin_group_container].visible, true);-->
  291. set(last_show_sub_container,get(container));
  292. set(last_parent,get(parent));
  293. set(layer[get(parent)].url,"%SWFPATH%/skin/bg1.png");
  294. );
  295. );
  296. </action>
  297. <action name="create_thumb">
  298. txtadd(thumb_name,'thumb_', get(i));
  299. addlayer(get(thumb_name));
  300. layer[get(thumb_name)].loadstyle(thumb);
  301. <!-- set(layer[get(thumb_name)].parent, get(container_name)); -->
  302. copy(layer[get(thumb_name)].scene, scene[get(i)].name);
  303. copy(layer[get(thumb_name)].album, album_name);
  304. set(layer[get(thumb_name)].thumb_index, get(thumb_index));
  305. mul(layer[get(thumb_name)].x, get(thumb_index),get(thumb_width));
  306. set(layer[get(thumb_name)].Title, get(scene[get(i)].title));
  307. set(layer[get(thumb_name)].onhover,showtext(get(Title),skintext));
  308. <!-- jscall(calc('console.log(" '+thumb_name+' x : '+layer[get(thumb_name)].x+'")')); -->
  309. <!-- if(container_name, add(layer[get(container_name)].width, get(thumb_width));); -->
  310. <!-- copy(layer[get(thumb_name)].tooltip, scene[get(i)].title);
  311. copy(layer[get(thumb_name)].tooltip_oy,layer[get(album_name)].tooltip_oy); -->
  312. txtadd(thumb_image_name,'thumb_image_',get(i));
  313. addlayer(get(thumb_image_name));
  314. set(layer[get(thumb_image_name)].url,get( scene[get(i)].thumburl));
  315. layer[get(thumb_image_name)].loadstyle(thumb_image);
  316. set(layer[get(thumb_image_name)].parent, get(thumb_name));
  317. <!-- 缩略图标题 -->
  318. txtadd(thumb_image_title_con,'thumb_image_title_con_',get(i));
  319. addlayer(get(thumb_image_title_con));
  320. layer[get(thumb_image_title_con)].loadstyle(thumb_image_title_container);
  321. set(layer[get(thumb_image_title_con)].parent, get(thumb_image_name));
  322. txtadd(thumb_image_title_word,'thumb_image_title_word_',get(i));
  323. addlayer(get(thumb_image_title_word));
  324. set(layer[get(thumb_image_title_word)].html, get(scene[get(i)].title));
  325. layer[get(thumb_image_title_word)].loadstyle(thumb_image_title_word);
  326. set(layer[get(thumb_image_title_word)].parent, get(thumb_image_title_con));
  327. inc(thumb_index); if(i == 0, copy(layer[auto_thumbs].active_album, album_name);
  328. copy(layer[auto_thumbs].active_thumb, thumb_name); );
  329. txtadd(current_thumb,'current_thumb_',get(i)); addlayer(get(current_thumb)); set(layer[get(current_thumb)].url,'%SWFPATH%/skin/pc-icon.png'); set(layer[get(current_thumb)].crop,'160|190|14|14'); set(layer[get(current_thumb)].keep,true); set(layer[get(current_thumb)].parent, get(thumb_name)); set(layer[get(current_thumb)].align, righttop); set(layer[get(current_thumb)].x,4); set(layer[get(current_thumb)].y,4); set(layer[get(current_thumb)].visible,false );
  330. </action>
  331. <action name="resize_auto_thumbs">copy(layer[auto_thumbs].width, area.pixelwidth);
  332. sub(layer[auto_thumbs].width,settings[auto_thumbs].left); sub(layer[auto_thumbs].width,
  333. settings[auto_thumbs].right); copy(layer[auto_thumbs].x, settings[auto_thumbs].left);
  334. copy(layer[auto_thumbs].y,settings[auto_thumbs].bottom); copy(layer[albums].width, layer[auto_thumbs].width);
  335. sub(layer[albums].width,settings[auto_thumbs].albums_right); add(layer[albums].width,
  336. settings[auto_thumbs].right);
  337. </action>
  338. <action name="show_thumbs">
  339. stopdelayedcall(disable_thumbs);
  340. if(!last_parent,set(last_parent,'album_0'););
  341. set(layer[get(last_parent)].url,"%SWFPATH%/skin/group2.png");
  342. if(container == last_show_sub_container AND layer[get(container)].state=='opened'
  343. ,
  344. set(layer[get(container)].state, 'closed');
  345. tween(layer[get(container)].y, -100, 0.5, easeOutQuint);
  346. <!-- set(layer[get(last_parent)].url,"%SWFPATH%/skin/group2.png"); -->
  347. ,
  348. if(layer[get(last_show_sub_container)].state=='opened',
  349. set(layer[get(last_show_sub_container)].state, 'closed');
  350. tween(layer[get(last_show_sub_container)].y, -100, 0.5, easeOutQuint);
  351. );
  352. if(layer[get(container)].state=='closed',
  353. set(layer[get(container)].state, 'opened');
  354. tween(layer[get(container)].y, 202, 0.5, easeOutQuint);
  355. set(last_show_sub_container,get(container));
  356. set(last_parent,get(parent));
  357. set(layer[get(parent)].url,"%SWFPATH%/skin/group1.png");
  358. );
  359. );
  360. <!-- set(layer[thumbs_background].visible, true); -->
  361. <!-- if(
  362. show,
  363. set(layer[thumbs_background].state, 'opened');
  364. tween(layer[thumbs_background].y, 97, 0.5, easeOutQuint);
  365. set(layer[thumbs_background].visible, true);
  366. ,
  367. set(layer[thumbs_background].state, 'closed');
  368. tween(layer[thumbs_background].y, -102, 0.5, easeOutQuint,
  369. set(layer[thumbs_background].visible, false););
  370. );
  371. -->
  372. <!-- if (layer[albums].current_container,
  373. copy(layer[get(container)].zorder,layer[get(layer[albums].current_container)].zorder);
  374. );
  375. inc(layer[get(container)].zorder);
  376. set(layer[albums].current_album, get(name));
  377. set(layer[albums].current_container, get(container));
  378. set(layer[get(container)].visible, true);
  379. tween_alpha(get(container), 1, .25);
  380. set(layer[new_thumbs].visible, true);
  381. set(layer[thumbs_scrollarea].width,get(layer[get(container)].width));
  382. if (device.pixelratio == 1,
  383. if(device.html5,mul(layer[thumbs_scrollarea].width, 2););
  384. ); -->
  385. <!-- move_thumbs();
  386. show_or_hide_shadows(); -->
  387. </action>
  388. <action name="hide_thumbs">delayedcall(get(container), 0, hide_container(get(container)); );</action>
  389. <action name="hide_container">tween(layer[%1].alpha, 0, .25, easeOutQuad, set(layer[%1].visible, false));
  390. tween(layer[thumbs_left_shadow].alpha, 0, .1); tween(layer[thumbs_right_shadow].alpha, 0, .1);
  391. </action>
  392. <action name="fadeout_siblings">for(set(i, 0), i LT layer.count, inc(i), if(layer[get(i)].parent ==
  393. layer[get(%1)].parent, if(layer[get(i)].parent == albums_scrollarea, if(scene[0].album, tween_alpha(get(i), .6);
  394. , tween_alpha(get(i), .85); ); , tween_alpha(get(i), .85); ); ) ); tween_alpha(get(%1), 1);
  395. </action>
  396. <action name="update_active_thumb">
  397. if(scene.count GT 1 ,
  398. <!-- 自动获取当前场景名称 -->
  399. set(layer[show_current_scene_title].html,get(scene[get(xml.scene)].title));
  400. stoptween(layer[show_current_scene_title].y);
  401. tween(layer[show_current_scene_title].y,80,1.5,easeOutQuint);
  402. stopdelayedcall(nametimer);
  403. delayedcall(nametimer,6,
  404. tween(layer[show_current_scene_title].y,-50,1.5,easeOutQuint);
  405. );
  406. txtadd(active_thumb_name, 'thumb_', get(scene[get(xml.scene)].index));
  407. set(layer[get(layer[auto_thumbs].active_thumb)].bgcolor,'0xffffff');
  408. set(layer[get(layer[auto_thumbs].active_thumb)].bgalpha,1);
  409. copy(layer[auto_thumbs].active_thumb,active_thumb_name);
  410. set(layer[get(layer[auto_thumbs].active_thumb)].bgcolor,'0xF6A600');
  411. set(layer[get(layer[auto_thumbs].active_thumb)].bgalpha,1);
  412. if(layer[get(layer[auto_thumbs].active_album)].as == album,
  413. copy(layer[get(layer[auto_thumbs].active_album)].crop,album_crop); ,
  414. if(layer[auto_thumbs].active_album,copy(layer[get(layer[auto_thumbs].active_album)].crop,thumb_crop)); );
  415. copy(layer[auto_thumbs].active_album,layer[get(active_thumb_name)].album);
  416. if(layer[get(layer[auto_thumbs].active_album)].as == album,
  417. copy(layer[get(layer[auto_thumbs].active_album)].crop,active_album_crop); ,
  418. if(layer[auto_thumbs].active_album, copy(layer[get(layer[auto_thumbs].active_album)].crop,active_thumb_crop); )
  419. );
  420. );
  421. </action>
  422. <action name="fadein_children">for(set(i, 0), i LT layer.count, inc(i), if(layer[get(i)].parent == %1,
  423. tween_alpha(get(i), 1); ) );
  424. </action>
  425. <action name="tween_alpha">tween(layer[%1].alpha, %2, .25);</action>
  426. <action name="move_thumbs">if(layer[albums].current_container, copy(thumbs_scrollarea_width,
  427. layer[thumbs_scrollarea].width); if (device.pixelratio == 1, if (device.html5, div(thumbs_scrollarea_width, 2);
  428. ); ); if (layer[new_thumbs].pixelwidth GE thumbs_scrollarea_width, mul(a,
  429. thumb_size,layer[get(layer[albums].current_album)].album_index); add(a, thumb_size); div(b, thumb_size, 2);
  430. div(c,layer[get(layer[albums].current_container)].width, 2); sub(result, a, b); sub(result, c);
  431. set(layer[get(layer[albums].current_container)].x, get(result));
  432. sub(layer[get(layer[albums].current_container)].x, get(layer[albums_scrollarea].loverflow));
  433. if(layer[get(layer[albums].current_container)].x GT 0,
  434. add(ox_plus_thumbs_width,layer[get(layer[albums].current_container)].x,
  435. layer[get(layer[albums].current_container)].width); if(ox_plus_thumbs_width GT layer[new_thumbs].pixelwidth,
  436. sub(dif, ox_plus_thumbs_width, layer[new_thumbs].pixelwidth); sub(layer[get(layer[albums].current_container)].x,
  437. dif); ); , set(layer[get(layer[albums].current_container)].x, 0); ); ,
  438. set(layer[get(layer[albums].current_container)].x,0); ); );
  439. </action>
  440. <action name="show_or_hide_shadows">if(layer[albums_scrollarea].loverflow GT 3,
  441. tween(layer[albums_left_shadow].alpha, 1, .1); , tween(layer[albums_left_shadow].alpha, 0, .1); );
  442. if(layer[albums_scrollarea].roverflow GT 3, tween(layer[albums_right_shadow].alpha, 1, .1); ,
  443. tween(layer[albums_right_shadow].alpha, 0, .1); ); if(layer[thumbs_scrollarea].loverflow GT 3,
  444. tween(layer[thumbs_left_shadow].alpha, 1, .1); , tween(layer[thumbs_left_shadow].alpha, 0, .1); );
  445. if(layer[thumbs_scrollarea].roverflow GT 3, tween(layer[thumbs_right_shadow].alpha, 1, .1); ,
  446. tween(layer[thumbs_right_shadow].alpha, 0, .1); );
  447. </action>
  448. <control mouse="drag" touch="drag" zoomtocursor="false" zoomoutcursor="false" draginertia="0.1" dragfriction="0.9"
  449. movetoaccelerate="1.0" movetospeed="10.0" movetofriction="0.8" keybaccelerate="0.09" keybfriction="0.94"
  450. keybfovchange="0.25" mousefovchange="1.0" fovspeed="3.0" keycodesin="16,65,107" keycodesout="17,89,90,109" fovfriction="0.9" bouncinglimits="true"/>
  451. <cursors standard="default" dragging="move" moving="move"/>
  452. <include url="%SWFPATH%/plugins/webvr.xml" devices="html5"/>
  453. <plugin name="WebVR" keep="true" devices="html5" pluginurl="%SWFPATH%/plugins/webvr.js" url=""
  454. multireslock.desktop="true" multireslock.mobile.or.tablet="false" mobilevr_support="true"
  455. mobilevr_fake_support="true"
  456. onavailable="removelayer(webvr_enterbutton); skin_arrange_buttons(); webvr_onavailable();"
  457. onentervr="hotspot_enterVR();set(webvr_open,true);skin_showloading(false); webvr_onentervr(); webvr_setup(); skin_reloadscene_webvr();webvr_enterVR();js(toggleBtns(0));"
  458. onexitvr="hotspot_exitVR();set(webvr_open,false);webvr_onexitvr(); webvr_setup(); skin_reloadscene_webvr();js(toggleBtns(1)); "/>
  459. <style name="webvr_button_style" border="false" roundedge="calc:1.0"
  460. backgroundcolor="get:skin_settings.design_bgcolor" backgroundalpha="get:skin_settings.design_bgalpha"
  461. shadow="0.01" shadowrange="10.0" shadowangle="90.0" shadowcolor="0x30261B" shadowalpha="0.50"
  462. css="calc:skin_settings.design_text_css + ' color:#FFFFFF;font-size:' + 20*webvr_setup_scale*webvr_button_scale + 'px;'"/>
  463. <layer name="webvr_rotate_to_landscape_request" keep="true" vr="true" devices="mobile" url="rotate_device.png"
  464. scale="0.5" align="top" edge="center" y="28%" autoalpha="true" alpha="0.0" enabled="false"/>
  465. <events name="webvr_events" keep="true" devices="html5" onresize.mobile="webvr_act_as_gyro_in_portrait_mode();"
  466. onviewchange=""/>
  467. <action name="webvr_setup">if(webvr.isenabled, copy(loadscene_flags_backup, skin_settings.loadscene_flags);
  468. set(skin_settings.loadscene_flags, MERGE|KEEPVIEW|KEEPMOVING|NOPREVIEW);
  469. webvr_act_as_gyro_in_portrait_mode(true); if(scene.count GT 1, set(hotspot[webvr_prev_scene].visible, true);set(hotspot[webvr_prev_home].visible, true);
  470. set(hotspot[webvr_next_scene].visible, true); set(events[webvr_events].onviewchange, webvr_menu_following()); );
  471. , if(loadscene_flags_backup !== null, copy(skin_settings.loadscene_flags, loadscene_flags_backup));
  472. tween(layer[webvr_rotate_to_landscape_request].alpha, 0.0, 0.0); set(hotspot[webvr_prev_scene].visible, false);
  473. set(hotspot[webvr_next_scene].visible, false); set(hotspot[webvr_prev_home].visible, false);set(events[webvr_events].onviewchange, null); );
  474. </action>
  475. <action name="webvr_act_as_gyro_in_portrait_mode">if(device.mobile AND webvr.isenabled, div(aspect, stagewidth,
  476. stageheight); if(aspect != lastaspect OR '%1' == 'true', copy(lastaspect, aspect); if(stagewidth GT stageheight,
  477. set(display.stereo, true); set(webvr.mobilevr_sensor_mode, 3); webvr.update();
  478. tween(layer[webvr_rotate_to_landscape_request].alpha, 0.0, 0.0); , set(display.stereo, false);
  479. set(webvr.mobilevr_sensor_mode, 1); webvr.update(); tween(layer[webvr_rotate_to_landscape_request].alpha, 1.0);
  480. delayedcall(3.0, tween(layer[webvr_rotate_to_landscape_request].alpha, 0.0, 1.0); ); ); ); , set(lastaspect, 0);
  481. );
  482. </action>
  483. <action name="webvr_enterVR">
  484. delayedcall(2.0,add_vr_thumbs(););
  485. </action>
  486. <action name="start_thumbs">
  487. set(start_ty, 10000);
  488. add(vr_juli,get(view.hlookat),20);
  489. if(%1 == "exit",
  490. callwith(hotspot[vr_tishi_bg],tween(alpha|ty, 0|10000,2.5, easeInQuint|easeInQuint););
  491. callwith(hotspot[vr_tishi], tween(alpha|ty, 0|10000,2.5, easeInQuint|easeInQuint, set(enabled,false)););
  492. ,
  493. set(hotspot[vr_tishi_bg].ath,get(view.hlookat));
  494. set(hotspot[vr_tishi].ath,get(view.hlookat));
  495. callwith(hotspot[vr_tishi_bg], copy(ty,start_ty);tween(alpha|ty, 0.5|0 , 3, easeOutQuad|easeOutQuint););
  496. callwith(hotspot[vr_tishi], copy(ty,start_ty);tween(alpha|ty, 1.0|0 , 3, easeOutQuad|easeOutQuint, set(enabled,true)););
  497. vr_yc_thumbs_time(0);
  498. );
  499. for(set(i,0), i LT scene.count, inc(i),
  500. set(vr_thumbs,get(scene[get(i)].name));
  501. txtadd(vr_thumbs_bg,get(vr_thumbs),'bg');
  502. if(%1 == "exit",
  503. callwith(hotspot[get(vr_thumbs_bg)], tween(alpha|ty, 0|10000,2.5, easeInQuint|easeInQuint););
  504. callwith(hotspot[get(vr_thumbs)], tween(alpha|ty, 0|10000,2.5, easeInQuint|easeInQuint, set(enabled,false)););
  505. ,
  506. set(hotspot[get(vr_thumbs_bg)].ath,get(vr_juli));
  507. set(hotspot[get(vr_thumbs)].ath,get(vr_juli));
  508. callwith(hotspot[get(vr_thumbs_bg)], copy(ty,start_ty);tween(alpha|ty, 0.5|0 , 3,easeOutQuad|easeOutQuint););
  509. callwith(hotspot[get(vr_thumbs)], copy(ty,start_ty);tween(alpha|ty, 1.0|0 , 3,easeOutQuad|easeOutQuint, set(enabled,true)););
  510. add(vr_juli,20);
  511. );
  512. );
  513. </action>
  514. <action name="add_vr_thumbs">
  515. set(vr_hot_ath,0);
  516. set(vr_hot_atv,0);
  517. set(vr_ts,true);
  518. for(set(i,0), i LT scene.count, inc(i),
  519. set(vr_thumbs,get(scene[get(i)].name));
  520. if(vr_ts, set(vr_thumbs_bg,vr_tishi_bg);
  521. set(vr_thumbs,vr_tishi);
  522. set(vr_hot_url,'%SWFPATH%/skin/texts.png');
  523. set(vr_ts,false);
  524. sub(i,1);
  525. ,
  526. txtadd(vr_thumbs_bg,get(vr_thumbs),'bg');
  527. set(vr_hot_url,get(scene[get(vr_thumbs)].thumburl));
  528. );
  529. if((vr_hot_ath == 360) OR (vr_hot_ath == 720) OR (vr_hot_ath == 1080),
  530. add(vr_hot_atv,15);
  531. );
  532. addhotspot(get(vr_thumbs_bg));
  533. hotspot[get(vr_thumbs_bg)].loadstyle(panel111);
  534. set(hotspot[get(vr_thumbs_bg)].ath,get(vr_hot_ath));
  535. set(hotspot[get(vr_thumbs_bg)].atv,get(vr_hot_atv));
  536. addhotspot(get(vr_thumbs));
  537. set(hotspot[get(vr_thumbs)].ath,get(vr_hot_ath));
  538. set(hotspot[get(vr_thumbs)].atv,get(vr_hot_atv));
  539. set(hotspot[get(vr_thumbs)].url,get(vr_hot_url));
  540. if((vr_hot_ath == vr_ts) AND (vr_hot_atv == 0),
  541. set(hotspot[vr_tishi].crop,287|0|252|176);
  542. ,
  543. txtadd(hotspot[get(vr_thumbs)].onclick,"start_thumbs(exit);loadscene(",get(vr_thumbs),", null, NOPREVIEW|MERGE|KEEPMOVING, BLEND(1));"
  544. );
  545. );
  546. hotspot[get(vr_thumbs)].loadstyle(thumb111);
  547. add(vr_hot_ath,20);
  548. );
  549. </action>
  550. <action protect="true" name="vr_yc_thumbs_time">
  551. set(vr_time,%1);
  552. add(vr_time,1);
  553. set(time_kz,true);
  554. if(vr_time == 15, delete(time_kz,vr_time);start_thumbs(exit););
  555. if(time_kz, delayedcall(1,vr_yc_thumbs_time(get(vr_time))););
  556. </action>
  557. <style name="webvr_menu_style" depth="800" scale="0.5" distorted="true" ath="0" atv="45" alpha="0.5"/>
  558. <style name="panel111" distorted="true" enabled="false" zorder="1" url="%SWFPATH%/skin/black.png" width="100" height="70" alpha="0" depth="700" ty="10000" keep="true" />
  559. <style name="thumb111" distorted="true" enabled="false" zorder="3" capture="false" alpha="0" depth="700" ty="10000" width="90" height="60" onover="tween(depth,500);" onout="tween(depth,700);" keep="true" />
  560. <hotspot name="webvr_prev_home" keep="true" style="skin_base|webvr_menu_style" crop="0|128|64|64" ox="0" onover="tween(scale,0.7);" onout="tween(scale,0.5);" vr_timeout="750" onclick="start_thumbs();" visible="false" devices="html5.and.webgl" />
  561. <hotspot name="webvr_prev_scene" keep="true" style="skin_base|webvr_menu_style" crop="0|64|64|64" ox="-64"
  562. onover="tween(scale,0.6);" onout="tween(scale,0.5);" vr_timeout="750" onclick="skin_nextscene_loop(-1);"
  563. visible="false" devices="html5.and.webgl"/>
  564. <hotspot name="webvr_next_scene" keep="true" style="skin_base|webvr_menu_style" crop="64|64|64|64" ox="+64"
  565. onover="tween(scale,0.6);" onout="tween(scale,0.5);" vr_timeout="750" onclick="skin_nextscene_loop(+1);"
  566. visible="false" devices="html5.and.webgl"/>
  567. <action name="webvr_menu_following" type="Javascript" devices="html5">
  568. <![CDATA[
  569. var hs1 = krpano.get("hotspot[webvr_prev_scene]");
  570. var hs2 = krpano.get("hotspot[webvr_next_scene]");
  571. var hs3 = krpano.get("hotspot[webvr_prev_home]");
  572. if(!hs1.hovering && !hs2.hovering && !hs3.hovering)
  573. {
  574. var f = 0.01; // following speed factor
  575. var h = krpano.view.hlookat;
  576. var v = krpano.view.vlookat;
  577. var hsh = hs1.ath;
  578. var hsv = hs1.atv;
  579. h = (h -(h|0)) + (((h|0) +360180)%360) - 180.0;
  580. v = (v -(v|0)) + (((v|0) +360180)%360) - 180.0;
  581. hsh = (hsh-(hsh|0)) + (((hsh|0)+360180)%360) - 180.0;
  582. var dh = h - hsh;
  583. dh += (dh > 180) ? -360 : (dh < -180) ? 360 : 0
  584. hsh += dh*f;
  585. var a = Math.abs(v - hsv) / 90.0;
  586. a = 1.0 * Math.max(1.0 - 2.0*Math.sqrt(a), 0);
  587. v = v + 55.0 - v*1.5;
  588. hsv = hsv*(1.0 - f) + v*f;
  589. hs1.ath = hs2.ath = hs3.ath = hsh;
  590. hs1.atv = hs2.atv = hs3.atv = hsv;
  591. hs1.alpha = hs2.alpha = hs3.alpha = a;
  592. }
  593. ]]>
  594. </action>
  595. <style name="skin_base" url="calc:vtourskinxmlpath.url + skin_settings.design_skin_images"/>
  596. <style name="skin_glow" ondown="copy(skin_lockglow,name); skin_buttonglow(get(name)); if(ondown2, ondown2() );"
  597. onover="if(skin_lockglow === null, copy(skin_lockglow,name); skin_buttonglow(get(name),0.3) ); if(onover2, onover2() );"
  598. onout="if(skin_lockglow === name AND !pressed, skin_buttonglow(null);delete(skin_lockglow); ); if(onout2, onout2() );"
  599. onup="if(onup2, onup2()); delayedcall(0, if(hovering AND enabled, skin_buttonglow(get(name),0.3); , skin_buttonglow(null);delete(skin_lockglow); ); );"/>
  600. <style name="skin_thumbtext_style" url="%SWFPATH%/plugins/textfield.swf" align="bottom" width="100%"
  601. autoheight="true" y="0" wordwrap="false" padding="5" enabled="false" background="true"
  602. backgroundcolor="0x000000" backgroundalpha="0.5" border="false"
  603. css="calc:skin_settings.design_text_css + ' text-align:center; font-size:10px;'"
  604. textshadow="get:skin_settings.design_text_shadow"/>
  605. <style name="skin_hotspotstyle" url="vtourskin_hotspot.png" scale="0.5" edge="top" distorted="true" tooltip=""
  606. onclick="if(linkedscene, set(enabled,false); skin_hidetooltips(); tween(depth|alpha|oy|rx, 4000|0.0|-50|-60, 0.5, default, loadscene(get(linkedscene),null,get(skin_settings.loadscene_flags),get(skin_settings.loadscene_blend)); skin_updatescroll(); ); );"
  607. onover="tween(scale,0.55);" onout="tween(scale,0.5);"
  608. onloaded="if(linkedscene AND skin_settings.tooltips_hotspots, copy(tooltip,scene[get(linkedscene)].title); loadstyle(skin_tooltips); );"/>
  609. <style name="skin_tooltips"
  610. onover.mouse="copy(layer[skin_tooltip].html, tooltip); set(layer[skin_tooltip].visible, true); tween(layer[skin_tooltip].alpha, 1.0, 0.1); asyncloop(hovering, copy(layer[skin_tooltip].x,mouse.stagex); copy(layer[skin_tooltip].y,mouse.stagey); );"
  611. onout.mouse="tween(layer[skin_tooltip].alpha, 0.0, 0.1, default, set(layer[skin_tooltip].visible,false), copy(layer[skin_tooltip].x,mouse.stagex); copy(layer[skin_tooltip].y,mouse.stagey); );"/>
  612. <layer name="skin_tooltip" keep="true" url="%SWFPATH%/plugins/textfield.swf" parent="STAGE" visible="false"
  613. alpha="0" enabled="false" align="lefttop" edge="bottom" oy="-2" width="200" autoheight="true"
  614. background="false" backgroundcolor="0xFFFFFF" backgroundalpha="1.0" border="false" bordercolor="0x000000"
  615. borderalpha="1.0" borderwidth="1.0" roundedge="0" shadow="0.0" shadowrange="4.0" shadowangle="45"
  616. shadowcolor="0x000000" shadowalpha="1.0" textshadow="get:skin_settings.design_text_shadow"
  617. textshadowrange="6.0" textshadowangle="90" textshadowcolor="0x000000" textshadowalpha="1.0"
  618. css="calc:skin_settings.design_text_css + ' text-align:center; font-size:16px;'" html=""/>
  619. <layer name="skin_layer" keep="true" type="container" align="top" width="get:skin_settings.layout_width"
  620. maxwidth="get:skin_settings.layout_maxwidth" height="100%" maskchildren="true" visible="false"
  621. bgcapture="false" zorder="1">
  622. <layer name="skin_loadingtext" url="%SWFPATH%/plugins/textfield.swf" align="center" x="5" y="-5"
  623. html="get:skin_settings.loadingtext" visible="false" autoheight="true" background="false" border="false"
  624. enabled="false"
  625. css="calc:skin_settings.design_text_css + ' text-align:center; font-style:italic; font-size:22px;'"
  626. textshadow="get:skin_settings.design_text_shadow"/>
  627. </layer>
  628. <plugin name="skin_gyro" keep="true" url="" html5_url="%SWFPATH%/plugins/gyro2.js" devices="html5" enabled="false"
  629. onavailable="js(showGyroBtn());" softstart="2"/>
  630. <layer name="show_current_scene_title" url="%SWFPATH%/plugins/textfield.swf" width="100%" keep="true" background="false"
  631. css="color:#ffffff;font-size:18px;font-family:微软雅黑;text-align:center;"
  632. enabled="false" y="50" html="" />
  633. <events name="init_view_event" keep="true" onxmlcomplete=""/>
  634. <events name="skin_events" keep="true"
  635. onxmlcomplete="set(events[skin_events].onxmlcomplete,null); skin_startup();js(showPanoBtns(get(scene.count)));"
  636. onnewpano="skin_showloading(true); skin_update_scene_infos(); skin_deeplinking_update_url();"
  637. onremovepano="skin_showloading(true);" onloadcomplete="skin_showloading(false);"
  638. onidle="skin_deeplinking_update_url();" onresize="skin_onresize();"
  639. onenterfullscreen.fullscreensupport="set(layer[skin_btn_fs].crop, '64|576|64|64');"
  640. onexitfullscreen.fullscreensupport="set(layer[skin_btn_fs].crop, '0|576|64|64');"
  641. onkeydown="skin_keydown_event();" onnewscene="" onmouseup=""/>
  642. <layer name="Subtitle" url="%SWFPATH%/plugins/textfield.swf" width="100%" keep="true" background="false" bgcolor="0xaaaaaa" visible="false" enabled="false" />
  643. <action name="showAutoTourSubtitle">
  644. set(layer[Subtitle].visible,true);
  645. set(layer[Subtitle].html,%1);
  646. set(layer[Subtitle].align,%3);
  647. set(layer[Subtitle].css,'text-align:center;color:%4; font-family:"Microsoft YaHei";font-size:%2;font-weight:normal;text-shadow:#000;');
  648. </action>
  649. <action name="init_gyro">
  650. if(skin_settings.gyro AND !device.desktop AND device.html5
  651. ,
  652. copy(plugin[skin_gyro].url,plugin[skin_gyro].html5_url);
  653. );
  654. </action>
  655. <action name="skin_startup">
  656. if(skin_settings.webvr AND device.html5 AND device.webgl
  657. ,
  658. copy(plugin[WebVR].url, plugin[WebVR].pluginurl);
  659. js(showWebvrBtn());
  660. );
  661. if(skin_settings.littleplanetintro AND (device.webgl OR device.flash) ,
  662. js(littlePlaneOpen(get(xml.scene)));
  663. ,
  664. init_gyro();
  665. set(events[init_view_event].onnewscene,'js(initViewSetting(get(xml.scene)));js(initCompassSetting(get(xml.scene),get(view.hlookat)));js(getComment(get(xml.scene)));js(initHotspotSetting(get(xml.scene)));');
  666. );
  667. set(layer[skin_layer].visible, true);
  668. </action>
  669. <action name="skin_addmapspots">
  670. for(set(i,0), i LT scene.count, inc(i),
  671. if(scene[get(i)].lat,
  672. txtadd(spotname,'spot', get(i)); txtadd(spotclickevent, 'skin_hidetooltips(); activatespot(',get(spotname),');
  673. loadscene(',get(scene[get(i)].name), ',null,get(skin_settings.loadscene_flags),get(skin_settings.loadscene_blend));
  674. skin_updatescroll();
  675. delayedcall(0.5,skin_showmap(false));');
  676. copy(scene[get(i)].mapspotname, spotname);
  677. addspot(get(spotname), get(scene[get(i)].lat), get(scene[get(i)].lng), get(scene[get(i)].heading), false,
  678. get(spotclickevent), null);
  679. if(skin_settings.tooltips_mapspots,
  680. set(layer[skin_map].spot[get(spotname)].tooltip
  681. ,
  682. get(scene[get(i)].title));
  683. txtadd(layer[skin_map].spot[get(spotname)].onover, 'set(hovering,true);',get(style[skin_tooltips].onover) );
  684. txtadd(layer[skin_map].spot[get(spotname)].onout, 'set(hovering,false);',get(style[skin_tooltips].onout) );
  685. );
  686. );
  687. );
  688. if(xml.scene != null, activatespot(get(scene[get(xml.scene)].mapspotname) ); , activatespot(spot0); );
  689. zoomToSpotsExtent();
  690. </action>
  691. <action name="skin_setup_littleplanetintro">
  692. copy(lp_scene, xml.scene);
  693. copy(lp_hlookat, view.hlookat);
  694. copy(lp_vlookat, view.vlookat);
  695. copy(lp_fov, view.fov); copy(lp_fovmax, view.fovmax);
  696. copy(lp_limitview,view.limitview);
  697. set(view.fovmax, 170);
  698. set(view.limitview, lookto);
  699. set(view.vlookatmin, 90);
  700. set(view.vlookatmax, 90);
  701. lookat(calc(lp_hlookat - 180), 90, 150, 1, 0, 0);
  702. set(
  703. events[lp_events].onloadcomplete,
  704. delayedcall(
  705. 0.5,
  706. if(
  707. lp_scene === xml.scene,
  708. set(control.usercontrol, off);
  709. copy(view.limitview, lp_limitview);
  710. set(view.vlookatmin, null);
  711. set(view.vlookatmax, null);
  712. tween(view.hlookat|view.vlookat|view.fov|view.distortion,
  713. calc('' + lp_hlookat + '|' + lp_vlookat + '|' + lp_fov + '|' + 0.0), 3.0, easeOutQuad, set(control.usercontrol, all);
  714. tween(view.fovmax, get(lp_fovmax));
  715. set(view.fovmin,%1);
  716. set(view.vlookatmin,%2);
  717. set(view.vlookatmax,%3);
  718. set(autorotate.horizon,%4);
  719. js(getComment(get(xml.scene)));
  720. js(initHotspotSetting(get(xml.scene)));
  721. set(events[init_view_event].onloadcomplete,'js(initViewSetting(get(xml.scene)));js(initCompassSetting(get(xml.scene),get(view.hlookat)));js(getComment(get(xml.scene)));
  722. js(initHotspotSetting(get(xml.scene)));');
  723. );
  724. delayedcall(3,init_gyro(););
  725. );
  726. );
  727. );
  728. </action>
  729. <action name="set_hotspot_visible">
  730. for(set(i,0),i LT hotspot.count,inc(i),
  731. if(%1 == false,
  732. if(hotspot[get(i)].visible == true,
  733. set(hotspot[get(i)].mark,true);set(hotspot[get(i)].visible,%1);
  734. );
  735. ,
  736. if(hotspot[get(i)].mark == true,
  737. set(hotspot[get(i)].visible,%1);
  738. );
  739. );
  740. );
  741. </action>
  742. <action name="skin_onresize">mul(mh, area.pixelheight, -1); if(layer[skin_thumbs].state == 'opened',
  743. add(mh,layer[skin_thumbs].height); set(layer[skin_scroll_layer].y, 97); , set(layer[skin_scroll_layer].y,
  744. get(mh)); ); if(layer[skin_map].state == 'opened', sub(hh,area.pixelheight,skin_settings.controlbar_offset);
  745. sub(hh,layer[skin_control_bar].height); sub(hh,32); add(mh,hh); add(mh,skin_settings.controlbar_overlap);
  746. sub(mh, layer[skin_scroll_layer].y_offset); copy(layer[skin_map].height, hh); ); add(mh,
  747. layer[skin_scroll_layer].y_offset); skin_video_updateseekbarwidth(); skin_arrange_buttons();
  748. </action>
  749. <action name="skin_arrange_buttons">calc(show_selbuttons, scene.count GT 1); calc(show_thumbutton,
  750. skin_settings.thumbs == true); calc(show_mapbutton, skin_settings.maps == true); calc(show_gyrobutton,
  751. plugin[skin_gyro].available == true AND view.vlookatrange == 180 ); calc(show_vrbutton, webvr.isavailable ==
  752. true); calc(show_fsbutton, device.fullscreensupport == true); set(lpos,6); set(cpos,0); if(show_gyrobutton,
  753. dec(cpos,20)); if(show_vrbutton, dec(cpos,24)); set(rpos,6); calc(show_dirbuttons, !device.mobile AND
  754. ((area.pixelwidth + 2*cpos) GT 520)); copy(layer[skin_btn_navi].visible, show_dirbuttons);
  755. copy(layer[skin_btn_prev].visible, show_selbuttons); copy(layer[skin_btn_next].visible, show_selbuttons);
  756. if(show_selbuttons, inc(lpos,44); inc(rpos,44); ); copy(layer[skin_btn_thumbs].visible, show_thumbutton);
  757. copy(layer[skin_btn_thumbs].x, lpos); if(show_thumbutton, inc(lpos,40)); copy(layer[skin_btn_map].visible,
  758. show_mapbutton); copy(layer[skin_btn_map].x, lpos); if(show_mapbutton, inc(lpos,40)); if(show_dirbuttons,
  759. copy(layer[skin_btn_navi].x, cpos); inc(cpos,140); set(layer[skin_btn_gyro].align, center);
  760. copy(layer[skin_btn_gyro].visible, show_gyrobutton); copy(layer[skin_btn_gyro].x, cpos); if(show_gyrobutton,
  761. inc(cpos,48)); set(layer[skin_btn_vr].align, center); copy(layer[skin_btn_vr].visible, show_vrbutton);
  762. copy(layer[skin_btn_vr].x, cpos); if(show_vrbutton, inc(cpos,80)); , set(layer[skin_btn_gyro].align, left);
  763. copy(layer[skin_btn_gyro].visible, show_gyrobutton); copy(layer[skin_btn_gyro].x, lpos); if(show_gyrobutton,
  764. inc(lpos,40)); set(layer[skin_btn_vr].align, left); copy(layer[skin_btn_vr].visible, show_vrbutton);
  765. copy(layer[skin_btn_vr].x, lpos); if(show_vrbutton, inc(lpos,80)); ); copy(layer[skin_btn_hide].x, rpos);
  766. inc(rpos,40); copy(layer[skin_btn_fs].visible, show_fsbutton); copy(layer[skin_btn_fs].x, rpos);
  767. if(show_fsbutton, inc(rpos,40));
  768. </action>
  769. <action name="skin_updatescroll">if(layer[skin_thumbs].loaded, set(cursceneindex, 0); if(xml.scene,
  770. copy(cursceneindex, scene[get(xml.scene)].index));
  771. layer[skin_thumbs].setcenter(get(scene[get(cursceneindex)].thumbx), get(scene[get(cursceneindex)].thumby)); );
  772. </action>
  773. <action name="skin_updatethumbscroll">copy(padding,skin_settings.thumbs_padding);
  774. if(skin_settings.thumbs_scrollbuttons, if(loverflow GT 0, set(layer[skin_thumbs_scrollleft].visible,true),
  775. set(layer[skin_thumbs_scrollleft].visible,false) ); if(roverflow GT 0,
  776. set(layer[skin_thumbs_scrollright].visible,true), set(layer[skin_thumbs_scrollright].visible,false) ); );
  777. if(skin_settings.thumbs_scrollindicator, if(woverflow GT 0,
  778. set(layer[skin_thumbs_scrollindicator].visible,true); sub(iw,pixelwidth,woverflow); div(pw,iw,pixelwidth);
  779. div(px,loverflow,woverflow); mul(pw,iw); copy(layer[skin_thumbs_scrollindicator].width,pw); sub(iw,pw);
  780. sub(iw,padding); sub(iw,padding); mul(px,iw); add(px,padding); copy(layer[skin_thumbs_scrollindicator].x,px); ,
  781. set(layer[skin_thumbs_scrollindicator].visible,false); ); );
  782. </action>
  783. <action name="skin_update_scene_infos">if(xml.scene !== null AND scene[get(xml.scene)].index GE 0,
  784. if(skin_settings.title, if(title, txtadd(layer[skin_title].html, get(title), ' - ',
  785. get(scene[get(xml.scene)].title) ); , copy(layer[skin_title].html, scene[get(xml.scene)].title ); );
  786. delayedcall(0.1, set(layer[skin_title].visible,true) ); ); if(skin_settings.thumbs_loop == false,
  787. if(scene[get(xml.scene)].index GT 0, set(layer[skin_btn_prev].enabled, true); set(layer[skin_btn_prev].alpha,
  788. 1.0); , set(layer[skin_btn_prev].enabled, false); set(layer[skin_btn_prev].alpha, 0.3); ); sub(lastsceneindex,
  789. scene.count, 1); if(scene[get(xml.scene)].index LT lastsceneindex, set(layer[skin_btn_next].enabled, true);
  790. set(layer[skin_btn_next].alpha, 1.0); , set(layer[skin_btn_next].enabled, false);
  791. set(layer[skin_btn_next].alpha, 0.3); ); , if(scene.count GT 1, set(layer[skin_btn_prev].enabled, true);
  792. set(layer[skin_btn_prev].alpha, 1.0); set(layer[skin_btn_next].enabled, true); set(layer[skin_btn_next].alpha,
  793. 1.0); , set(layer[skin_btn_prev].enabled, false); set(layer[skin_btn_prev].alpha, 0.3);
  794. set(layer[skin_btn_next].enabled, false); set(layer[skin_btn_next].alpha, 0.3); ); ); if(scene.count GT 1,
  795. set(layer[skin_btn_prev_fs].visible, true); set(layer[skin_btn_next_fs].visible, true); ,
  796. set(layer[skin_btn_prev_fs].visible, false); set(layer[skin_btn_next_fs].visible, false); ); txtadd(parentname,
  797. 'skin_thumb_', get(scene[get(xml.scene)].index)); if(layer[get(parentname)], set(layer[skin_thumbborder].parent,
  798. get(parentname)); set(layer[skin_thumbborder].visible, true); , set(layer[skin_thumbborder].visible, false); );
  799. if(scene[get(xml.scene)].mapspotname, layer[skin_map].activatespot(get(scene[get(xml.scene)].mapspotname));
  800. layer[skin_map].pantospot(get(scene[get(xml.scene)].mapspotname)); ); if(plugin[skin_gyro].isavailable == true
  801. AND view.vlookatrange == 180, set(layer[skin_btn_gyro].visible, true); , set(layer[skin_btn_gyro].visible,
  802. false) ); if(view.vlookatrange LT 180, if(backup_control_bouncinglimits === null,
  803. copy(backup_control_bouncinglimits, control.bouncinglimits); ); set(control.bouncinglimits, false); ,
  804. if(backup_control_bouncinglimits !== null, copy(control.bouncinglimits, backup_control_bouncinglimits); ); );
  805. if(scene[get(xml.scene)].isvideopano AND plugin[video] !== null, skin_video_addcontrols(); ,
  806. skin_video_removecontrols(); ); );
  807. </action>
  808. <action name="skin_gotoscene">if(scene[%1], copy(cursceneindex, scene[get(xml.scene)].index); copy(newsceneindex,
  809. scene[%1].index); txtadd(layer[skin_thumbborder].parent, 'skin_thumb_', get(newsceneindex));
  810. layer[skin_thumbs].scrolltocenter(get(scene[get(newsceneindex)].thumbx), get(scene[get(newsceneindex)].thumby));
  811. loadscene(get(scene[get(newsceneindex)].name),null,get(skin_settings.loadscene_flags),calc(newsceneindex LT
  812. cursceneindex ? skin_settings.loadscene_blend_prev : (newsceneindex GT cursceneindex ?
  813. skin_settings.loadscene_blend_next : skin_settings.loadscene_blend))); );
  814. </action>
  815. <action name="skin_nextscene">add(newsceneindex, scene[get(xml.scene)].index, %1); if(newsceneindex GE 0 AND
  816. newsceneindex LT scene.count, txtadd(layer[skin_thumbborder].parent, 'skin_thumb_', get(newsceneindex));
  817. layer[skin_thumbs].scrolltocenter(get(scene[get(newsceneindex)].thumbx), get(scene[get(newsceneindex)].thumby));
  818. loadscene(get(scene[get(newsceneindex)].name),null,get(skin_settings.loadscene_flags),calc(%1 LT 0 ?
  819. skin_settings.loadscene_blend_prev : skin_settings.loadscene_blend_next)); );
  820. </action>
  821. <action name="skin_nextscene_loop">add(newsceneindex, scene[get(xml.scene)].index, %1); sub(lastsceneindex,
  822. scene.count, 1); if(newsceneindex LT 0, copy(newsceneindex,lastsceneindex)); if(newsceneindex GT lastsceneindex,
  823. set(newsceneindex,0)); layer[skin_thumbs].scrolltocenter(get(scene[get(newsceneindex)].thumbx),
  824. get(scene[get(newsceneindex)].thumby));
  825. loadscene(get(scene[get(newsceneindex)].name),null,get(skin_settings.loadscene_flags),calc(%1 LT 0 ?
  826. skin_settings.loadscene_blend_prev : skin_settings.loadscene_blend_next));
  827. </action>
  828. <action name="skin_showloading">
  829. </action>
  830. <action name="skin_hidetooltips">set(layer[skin_tooltip].alpha,0.0); set(layer[skin_tooltip].visible,false);
  831. </action>
  832. <action name="skin_buttonglow">if('%1' !== 'null', set(strength,0.7); if(%2 != null, set(strength,%2));
  833. set(layer[skin_buttonglow].parent, %1); set(layer[skin_buttonglow].visible, true);
  834. tween(layer[skin_buttonglow].alpha, get(strength), 0.07); , tween(layer[skin_buttonglow].alpha, 0.0, 0.1,
  835. default, set(layer[skin_buttonglow].parent, null); set(layer[skin_buttonglow].visible, false); ); );
  836. </action>
  837. <action name="skin_calc_opened_closed">set(layer[get(name)].y_opened, get(layer[get(name)].y));
  838. set(layer[get(name)].y_closed, calc(layer[get(name)].y - skin_settings.controlbar_offset -
  839. skin_settings.controlbar_height + skin_settings.controlbar_offset_closed));
  840. </action>
  841. <action name="skin_hideskin">if(layer[skin_map].state != 'closed', skin_showmap(false); wait(0.40); );
  842. if(layer[skin_thumbs].state != 'closed', skin_showthumbs(false); wait(0.25); ); set(hidetime, calc('%1' ==
  843. 'instant' ? 0.0 : 0.5)); tween(layer[skin_scroll_window].y, get(layer[skin_scroll_window ].y_closed),
  844. get(hidetime)); tween(layer[skin_splitter_bottom].y, get(layer[skin_splitter_bottom].y_closed), get(hidetime));
  845. tween(layer[skin_control_bar].y, get(layer[skin_control_bar ].y_closed), get(hidetime));
  846. tween(layer[skin_btn_prev_fs].x, 0, get(hidetime)); tween(layer[skin_btn_next_fs].x, 0, get(hidetime));
  847. if(layer[skin_logo], tween(layer[skin_logo].alpha, 0.0, 0.5, default, set(layer[skin_logo].visible,false)); );
  848. stopdelayedcall(skin_btn_show_alpha); set(layer[skin_btn_show].visible, true); delayedcall(skin_btn_show_alpha,
  849. get(hidetime), tween(layer[skin_btn_show].alpha, 0.25, 0.25); );
  850. </action>
  851. <action name="skin_showskin">tween(layer[skin_scroll_window ].y, get(layer[skin_scroll_window ].y_opened));
  852. tween(layer[skin_splitter_bottom].y, get(layer[skin_splitter_bottom].y_opened)); tween(layer[skin_control_bar
  853. ].y, get(layer[skin_control_bar ].y_opened)); tween(layer[skin_btn_prev_fs].x, -50);
  854. tween(layer[skin_btn_next_fs].x, -50); if(layer[skin_logo], set(layer[skin_logo].visible,true);
  855. tween(layer[skin_logo].alpha, 1.0); ); stopdelayedcall(skin_btn_show_alpha); set(layer[skin_btn_show].visible,
  856. false); delayedcall(skin_btn_show_alpha, 0.25, tween(layer[skin_btn_show].alpha, 0.0, 0.0); );
  857. </action>
  858. <action name="skin_showthumbs">
  859. if(!webvr_open,
  860. if(%1 == null,
  861. if(layer[thumbs_background].state == 'closed',
  862. set(show,true),
  863. set(show,false)
  864. );
  865. ,
  866. set(show,%1);
  867. );
  868. if(
  869. show,
  870. set(layer[thumbs_background].state, 'opened');
  871. tween(layer[thumbs_background].y, 97, 0.5, easeOutQuint);
  872. set(layer[thumbs_background].visible, true);
  873. if(scene[0].album,
  874. if(!last_show_sub_container,
  875. set(last_show_sub_container,"album_0_container");
  876. );
  877. set(layer[get(last_show_sub_container)].state, 'opened');
  878. tween(layer[get(last_show_sub_container)].y, 202, 0.5, easeOutQuint);
  879. );
  880. ,
  881. set(layer[thumbs_background].state, 'closed');
  882. tween(layer[thumbs_background].y, -100, 0.5, easeOutQuint,
  883. set(layer[thumbs_background].visible, false););
  884. if(last_show_sub_container,
  885. set(layer[get(last_show_sub_container)].state, 'closed');
  886. tween(layer[get(last_show_sub_container)].y, -122, 0.5, easeOutQuint);
  887. );
  888. );
  889. );
  890. </action>
  891. <action name="skin_showmap">
  892. if(%1 == null,
  893. if(layer[skin_map].state == 'closed', set(show,true), set(show,false));
  894. ,
  895. set(show,%1); );
  896. mul(mh, layer[skin_scroll_layer].pixelheight, -1);
  897. if(show,
  898. tween(layer[skin_thumbs_container].alpha, 0.0, 0.25, default, set(layer[skin_thumbs_container].visible,false));
  899. set(layer[skin_map].visible, true);
  900. tween(layer[skin_map].alpha, 1.0, 0.25);
  901. set(layer[skin_map].state,
  902. 'opened');
  903. sub(hh,area.pixelheight,skin_settings.controlbar_offset);
  904. sub(hh,layer[skin_control_bar].height);
  905. sub(hh,32); add(mh,hh); sub(hh,skin_settings.controlbar_overlap);
  906. copy(layer[skin_map].height, hh);
  907. tween(layer[skin_scroll_layer].y, get(mh), 0.5, easeOutQuint); , if(layer[skin_map].state != 'closed',
  908. set(layer[skin_map].state, 'closed'); add(mh, layer[skin_scroll_layer].y_offset); tween(layer[skin_map].alpha,
  909. 0.0, 0.5, easeOutQuint); tween(layer[skin_scroll_layer].y, get(mh), 0.5, easeOutQuint,
  910. set(layer[skin_map].visible,false) ); ); );
  911. </action>
  912. <action name="skin_keydown_event">if(keycode == 33, skin_nextscene_loop(-1) ); if(keycode == 34,
  913. skin_nextscene_loop(+1) ); if(keycode == 35, skin_gotoscene(calc(scene.count-1)) ); if(keycode == 36,
  914. skin_gotoscene(0) );
  915. </action>
  916. <action name="skin_deeplinking_update_url">
  917. </action>
  918. <action name="skin_reloadscene_webvr">delayedcall(0.1, if(scene[get(xml.scene)].havevrimage,
  919. loadscene(get(xml.scene), null, MERGE|KEEPVIEW|KEEPMOVING|KEEPPLUGIN|NOPREVIEW, BLEND(0.5)); ); );
  920. </action>
  921. <action name="skin_video_addcontrols">set(events[skin_events].onclick, skin_video_clickevent() );
  922. set(plugin[video].onvideoready, skin_video_updatestate() ); set(plugin[video].onvideoplay,
  923. skin_video_updatestate() ); set(plugin[video].onvideopaused, skin_video_updatestate() );
  924. set(plugin[video].onvideocomplete, skin_video_updatestate() ); if(plugin[video].ispaused AND
  925. plugin[video].pausedonstart, set(layer[skin_video_playpause].state, 'visible');
  926. set(layer[skin_video_playpause].enabled, true); tween(layer[skin_video_playpause].alpha, 1.0); );
  927. delayedcall(skin_video_delayedvisible, 0.25, set(layer[skin_video_controls].visible, true) );
  928. skin_video_updateseekbarwidth(); set(layer[skin_video_seekpos].x,0); set(layer[skin_video_loadbar].width,0);
  929. setinterval(skin_video_seek_updates, 0.5, skin_video_updatetime() );
  930. </action>
  931. <action name="skin_video_removecontrols">stopdelayedcall(skin_video_delayedvisible);
  932. set(events[skin_events].onclick, null); set(layer[skin_video_playpause].alpha, 0.0);
  933. set(layer[skin_video_controls].visible, false); clearinterval(skin_video_seek_updates);
  934. </action>
  935. <action name="skin_video_updatetime">copy(t1, plugin[video].time); copy(t2, plugin[video].totaltime); if(%1 !==
  936. null, calc(t1, %1 * t2); ); div(t1_min, t1, 60); mod(t1_sec, t1, 60); Math.floor(t1_min); Math.floor(t1_sec);
  937. div(t2_min, t2, 60); mod(t2_sec, t2, 60); Math.floor(t2_min); Math.floor(t2_sec);
  938. calc(layer[skin_video_time].html, t1_min + ':' + (t1_sec LT 10 ? '0' : '') + t1_sec + ' / ' + t2_min + ':' +
  939. (t2_sec LT 10 ? '0' : '') + t2_sec); calc(layer[skin_video_seekpos].x, (t1 / t2 * 100) + '%');
  940. calc(layer[skin_video_loadbar].width, (plugin[video].loadedbytes / plugin[video].totalbytes * 100) + '%');
  941. </action>
  942. <action name="skin_video_updateseekbarwidth">if(skin_settings.title, calc(layer[skin_video_seekbar_container].width,
  943. 0 - (32 + layer[skin_title].pixelwidth + layer[skin_video_time].pixelwidth));
  944. calc(layer[skin_video_seekbar_container].x, layer[skin_title].pixelwidth + 16); ,
  945. calc(layer[skin_video_seekbar_container].width, 0 - (24 + layer[skin_video_time].pixelwidth));
  946. set(layer[skin_video_seekbar_container].x, 8); );
  947. </action>
  948. <action name="skin_video_ondownseeking">asyncloop(pressed, screentolayer(skin_video_seekbar,
  949. mouse.stagex,mouse.stagey, lx,ly); calc(seekpos, lx / layer[skin_video_seekbar].pixelwidth); clamp(seekpos, 0.0,
  950. 1.0); skin_video_updatetime(seekpos); , plugin[video].seek(calc((seekpos * 100) + '%')); );
  951. </action>
  952. <layer name="skin_video_playpause" keep="true" style="skin_base|skin_glow" crop="0|640|64|64" scale="0.75"
  953. align="center" alpha="0.0" autoalpha="true" state="hidden" onclick="skin_video_playpause_click();"/>
  954. <action name="skin_video_updatestate">calc(layer[skin_video_playpause].crop, plugin[video].ispaused ? '0|640|64|64'
  955. : '64|640|64|64'); if(plugin[video].iscomplete, set(layer[skin_video_playpause].state, 'visible');
  956. tween(layer[skin_video_playpause].alpha, 1.0); );
  957. </action>
  958. <action name="skin_video_playpause_click">if(plugin[video].ispaused, plugin[video].play();
  959. set(layer[skin_video_playpause].state, 'hidden'); tween(layer[skin_video_playpause].alpha, 0.0); ,
  960. plugin[video].pause(); set(layer[skin_video_playpause].state, 'visible');
  961. tween(layer[skin_video_playpause].alpha, 1.0); delayedcall(autohide_pp, 2.0,
  962. set(layer[skin_video_playpause].state,'hidden'); tween(layer[skin_video_playpause].alpha, 0.0); ); );
  963. </action>
  964. <action name="skin_video_clickevent">stopdelayedcall(autohide_pp); switch(layer[skin_video_playpause].state,
  965. 'visible', 'hidden'); if(layer[skin_video_playpause].state == 'hidden', tween(layer[skin_video_playpause].alpha,
  966. 0.0); , tween(layer[skin_video_playpause].alpha, 1.0); delayedcall(autohide_pp, 2.0,
  967. set(layer[skin_video_playpause].state,'hidden'); tween(layer[skin_video_playpause].alpha, 0.0); ); );
  968. </action>
  969. <contextmenu fullscreen="false" versioninfo="false">
  970. <item name="cc" caption="更改控制模式" onclick="skin_changecontrolmode();" separator="true"/>
  971. <item name="nv" caption="正常视角" onclick="skin_view_normal();" showif="view.vlookatrange == 180"
  972. separator="true"/>
  973. <item name="sv" caption="立体视角" onclick="skin_view_stereographic();" showif="view.vlookatrange == 180"
  974. devices="flash|webgl"/>
  975. <item name="pv" caption="帕尼尼视角" onclick="skin_view_pannini();" showif="view.vlookatrange == 180"
  976. devices="flash|webgl"/>
  977. <item name="vb" caption="水晶球视角" onclick="skin_view_ball();" showif="view.vlookatrange == 180"
  978. devices="flash|webgl"/>
  979. <item name="lp" caption="小行星视角" onclick="skin_view_littleplanet();" showif="view.vlookatrange == 180"
  980. devices="flash|webgl"/>
  981. </contextmenu>
  982. <action name="skin_changecontrolmode">switch(control.touch, moveto, drag); switch(control.mouse, moveto, drag);
  983. </action>
  984. <action name="skin_view_look_straight">if(view.vlookat LT -80 OR view.vlookat GT +80, tween(view.vlookat, 0.0, 1.0,
  985. easeInOutSine); tween(view.fov, 100, distance(150,0.8)); );
  986. </action>
  987. <action name="skin_view_normal">
  988. set(view.fovmax, 140);
  989. tween(view.distortionfovlink, 0.5, distance(1.0,0.5));
  990. skin_view_look_straight(); tween(view.architectural, 0.0, distance(1.0,0.5));
  991. tween(view.pannini, 0.0, distance(1.0,0.5)); tween(view.distortion, 0.0, distance(1.0,0.5));
  992. </action>
  993. <action name="skin_view_fisheye">skin_view_look_straight(); tween(view.architectural, 0.0, distance(1.0,0.5));
  994. tween(view.pannini, 0.0, distance(1.0,0.5)); tween(view.distortion, 0.35, distance(1.0,0.5));
  995. </action>
  996. <action name="skin_view_architectural">skin_view_look_straight(); tween(view.architectural, 1.0, distance(1.0,0.5));
  997. tween(view.pannini, 0.0, distance(1.0,0.5)); tween(view.distortion, 0.0, distance(1.0,0.5));
  998. </action>
  999. <action name="skin_view_stereographic">skin_view_look_straight(); tween(view.architectural, 0.0, distance(1.0,0.5));
  1000. tween(view.pannini, 0.0, distance(1.0,0.5)); tween(view.distortion, 1.0, distance(1.0,0.8));
  1001. </action>
  1002. <action name="skin_view_pannini">skin_view_look_straight(); tween(view.architectural, 0.0, distance(1.0,0.5));
  1003. tween(view.pannini, 1.0, distance(1.0,0.8)); if(view.distortion LT 0.1, tween(view.distortion, 1.0,
  1004. distance(1.0,0.8)); );
  1005. </action>
  1006. <action name="skin_view_littleplanet">
  1007. set(view.stereographic, true);
  1008. set(view.fovmax, 160);
  1009. tween(view.distortionfovlink, 0.5, distance(1.0,0.5));
  1010. tween(view.architectural, 0.0, distance(1.0,0.5));
  1011. tween(view.pannini, 0.0, distance(1.0,0.5));
  1012. tween(view.distortion, 1.0, distance(1.0,0.8));
  1013. tween(view.fov, 150, distance(150,0.8));
  1014. tween(view.vlookat, 90, distance(100,0.8));
  1015. add(new_hlookat, view.hlookat, 123.0);
  1016. tween(view.hlookat, get(new_hlookat), distance(100,0.8));
  1017. </action>
  1018. <action name="skin_view_ball">
  1019. tween(view.architectural, 0.0, distance(1.0,0.5));
  1020. tween(view.pannini, 0.0, distance(1.0,0.5));
  1021. tween(view.distortion, 2.8, distance(1.0,0.5),easeOutQuad,
  1022. skin_view_look_straight();
  1023. set(view_type_changing,false);
  1024. if(multi_view_type !== null,
  1025. delayedcall(0.1,change_multi_view(multi_view_type));
  1026. );
  1027. );
  1028. </action>
  1029. <action name="skin_view_architectural">
  1030. skin_view_look_straight();
  1031. tween(view.architectural, 1.0, distance(1.0,0.5));
  1032. tween(view.pannini, 0.0, distance(1.0,0.5));
  1033. tween(view.distortion, 0.0, distance(1.0,0.5));
  1034. </action>
  1035. <action name="skin_view_stereographic">
  1036. skin_view_look_straight();
  1037. tween(view.architectural, 0.0, distance(1.0,0.5));
  1038. tween(view.pannini, 0.0, distance(1.0,0.5));
  1039. tween(view.distortion, 1.0, distance(1.0,0.8));
  1040. </action>
  1041. <plugin name="soundinterface" url="%SWFPATH%/plugins/soundinterface.swf"
  1042. alturl="%SWFPATH%/plugins/soundinterface.js" rootpath="" preload="true" keep="true"/>
  1043. <action name="draghotspot">spheretoscreen(ath, atv, hotspotcenterx, hotspotcentery, 'l'); sub(drag_adjustx,
  1044. mouse.stagex, hotspotcenterx); sub(drag_adjusty, mouse.stagey, hotspotcentery); asyncloop(pressed, sub(dx,
  1045. mouse.stagex, drag_adjustx); sub(dy, mouse.stagey, drag_adjusty); screentosphere(dx, dy, ath, atv); );
  1046. </action>
  1047. <layer name="tour_guide_alert" url="" keep="true" align="center" edge="center" x="0" y="0" maxwidth="100%"
  1048. maxheight="100%" enabled="false" visible="false"/>
  1049. <action name="show_tour_guide_alert">set(layer[tour_guide_alert].url,%1); set(layer[tour_guide_alert].visible,true);
  1050. set(layer[tour_guide_alert].alpha,1); delayedcall(4, tween(layer[tour_guide_alert].alpha,0,1));
  1051. </action>
  1052. <action name="addEffect">
  1053. if(plugin[snow] === null,
  1054. addplugin(snow);
  1055. if(device.html5,set(plugin[snow].url,'%SWFPATH%/plugins/snow.js');,set(plugin[snow].url,'%SWFPATH%/plugins/snow.swf');)
  1056. set(plugin[snow].floor,0.7);
  1057. set(plugin[snow].zorder,1);
  1058. set(plugin[snow].keep,false);
  1059. );
  1060. if('%1' == 'defaultsnow', defaultsnow());
  1061. if('%1' == 'snowballs', snowballs());
  1062. if('%1' == 'snowflakes', snowflakes());
  1063. if('%1' == 'silverstars', silverstars());
  1064. if('%1' == 'goldenstars', goldenstars());
  1065. if('%1' == 'hearts', hearts());
  1066. if('%1' == 'smileys', smileys());
  1067. if('%1' == 'money', money());
  1068. if('%1' == 'rain', rain());
  1069. if('%1' == 'midrain', midrain());
  1070. if('%1' == 'heavyrain', heavyrain());
  1071. if('%1' =='custom', customeffect(%2));
  1072. </action>
  1073. <action name="defaultsnow">set(plugin[snow].mode, snow); set(plugin[snow].blendmode, normal);
  1074. set(plugin[snow].flakes, 4000); set(plugin[snow].color, 0xFFFFFF); set(plugin[snow].speed, 1.0);
  1075. set(plugin[snow].shake, 4.0); set(plugin[snow].speedvariance, 2.0); set(plugin[snow].spreading, 4.0);
  1076. set(plugin[snow].wind, 0.0);
  1077. </action>
  1078. <action name="snowballs">set(plugin[snow].mode, image); set(plugin[snow].imageurl,
  1079. '%SWFPATH%/snow_image/snowball.png'); set(plugin[snow].blendmode, normal); set(plugin[snow].flakes, 2000);
  1080. set(plugin[snow].imagescale, 0.5); set(plugin[snow].speed, 1.0); set(plugin[snow].shake, 4.0);
  1081. set(plugin[snow].speedvariance, 2.0); set(plugin[snow].spreading, 2.0); set(plugin[snow].wind, 0.0);
  1082. </action>
  1083. <action name="snowflakes">set(plugin[snow].mode, image); set(plugin[snow].imageurl,
  1084. '%SWFPATH%/snow_image/snowflake.png'); set(plugin[snow].blendmode, add); set(plugin[snow].flakes, 2000);
  1085. set(plugin[snow].imagescale, 0.4); set(plugin[snow].speed, 0.5); set(plugin[snow].shake, 8.0);
  1086. set(plugin[snow].speedvariance, 2.0); set(plugin[snow].spreading, 2.0); set(plugin[snow].wind, 0.0);
  1087. </action>
  1088. <action name="silverstars">set(plugin[snow].mode, image); set(plugin[snow].imageurl,
  1089. '%SWFPATH%/snow_image/silverstar.png'); set(plugin[snow].blendmode, add); set(plugin[snow].flakes, 2000);
  1090. set(plugin[snow].imagescale, 0.3); set(plugin[snow].speed, 1.0); set(plugin[snow].shake, 4.0);
  1091. set(plugin[snow].speedvariance, 2.0); set(plugin[snow].spreading, 2.0); set(plugin[snow].wind, 0.0);
  1092. </action>
  1093. <action name="goldenstars">set(plugin[snow].mode, image); set(plugin[snow].imageurl,
  1094. '%SWFPATH%/snow_image/star.png'); set(plugin[snow].blendmode, normal); set(plugin[snow].flakes, 1000);
  1095. set(plugin[snow].imagescale, 1.0); set(plugin[snow].speed, 1.0); set(plugin[snow].shake, 4.0);
  1096. set(plugin[snow].speedvariance, 2.0); set(plugin[snow].spreading, 1.9); set(plugin[snow].wind, 0.0);
  1097. </action>
  1098. <action name="hearts">set(plugin[snow].mode, image); set(plugin[snow].imageurl, '%SWFPATH%/snow_image/heart.png');
  1099. set(plugin[snow].blendmode, normal); set(plugin[snow].flakes, 250); set(plugin[snow].imagescale, 0.5);
  1100. set(plugin[snow].speed, 1.0); set(plugin[snow].shake, 4.0); set(plugin[snow].speedvariance, 2.0);
  1101. set(plugin[snow].spreading, 1.5); set(plugin[snow].wind, 0.0);
  1102. </action>
  1103. <action name="smileys">set(plugin[snow].mode, image); set(plugin[snow].imageurl, '%SWFPATH%/snow_image/smiley.png');
  1104. set(plugin[snow].blendmode, normal); set(plugin[snow].flakes, 1000); set(plugin[snow].imagescale, 1.0);
  1105. set(plugin[snow].speed, 1.0); set(plugin[snow].shake, 4.0); set(plugin[snow].speedvariance, 2.0);
  1106. set(plugin[snow].spreading, 1.5); set(plugin[snow].wind, 0.0);
  1107. </action>
  1108. <action name="money">set(plugin[snow].mode, image); set(plugin[snow].imageurl, '%SWFPATH%/snow_image/redpack.png');
  1109. set(plugin[snow].blendmode, normal); set(plugin[snow].flakes, 500); set(plugin[snow].imagescale, 0.8);
  1110. set(plugin[snow].speed, 0.8); set(plugin[snow].shake, 8.0); set(plugin[snow].speedvariance, 3.0);
  1111. set(plugin[snow].spreading, 2.5); set(plugin[snow].wind, 0.0);
  1112. </action>
  1113. <action name="rain">set(plugin[snow].mode, image); set(plugin[snow].imageurl, '%SWFPATH%/snow_image/rain.png');
  1114. set(plugin[snow].blendmode, normal); set(plugin[snow].flakes, 1000); set(plugin[snow].color, 0x7FAFFF);
  1115. set(plugin[snow].speed, 20.0); set(plugin[snow].shake, 1.0); set(plugin[snow].speedvariance, 1.0);
  1116. set(plugin[snow].spreading, 4.0); set(plugin[snow].wind, 2.0);
  1117. </action>
  1118. <action name="midrain">set(plugin[snow].mode, image); set(plugin[snow].imageurl, '%SWFPATH%/snow_image/rain.png');
  1119. set(plugin[snow].blendmode, normal); set(plugin[snow].flakes, 2500); set(plugin[snow].color, 0x7FAFFF);
  1120. set(plugin[snow].speed, 20.0); set(plugin[snow].shake, 1.0); set(plugin[snow].speedvariance, 1.0);
  1121. set(plugin[snow].spreading, 6.0); set(plugin[snow].wind, 2.0);
  1122. </action>
  1123. <action name="heavyrain">set(plugin[snow].mode, image); set(plugin[snow].imageurl, '%SWFPATH%/snow_image/rain.png');
  1124. set(plugin[snow].blendmode, normal); set(plugin[snow].flakes, 4000); set(plugin[snow].color, 0x9FAFFF);
  1125. set(plugin[snow].speed, 20.0); set(plugin[snow].shake, 0.0); set(plugin[snow].speedvariance, 1.0);
  1126. set(plugin[snow].spreading, 10.0); set(plugin[snow].wind, 2.0);
  1127. </action>
  1128. <action name="customeffect">set(plugin[snow].mode, image); set(plugin[snow].imageurl, '%1');
  1129. set(plugin[snow].blendmode, normal); set(plugin[snow].flakes, 500); set(plugin[snow].imagescale, 1.0);
  1130. set(plugin[snow].speed, 1.0); set(plugin[snow].shake, 4.0); set(plugin[snow].speedvariance, 2.0);
  1131. set(plugin[snow].spreading, 1.9); set(plugin[snow].wind, 0.0);
  1132. </action>
  1133. <events name="speechevents"
  1134. onnewpano="indexoftxt(result, get(scene[get(xml.scene)].bgspeech),sound); if(result GE 0,tween(sound[bgsnd].volume, 0.5)); set(speech_bgmusic,get(scene[get(xml.scene)].bgspeech)); if(speech_bgmusic,js(openSpeechVoiceBtn());playsound(bgs,get(scene[get(xml.scene)].bgspeech),1,tween(sound[bgsnd].volume, 1)););"
  1135. onremovepano="stopsound(bgs);stopsound(bgm);stopsound(hotspotbgm);" keep="true"/>
  1136. <!-- <events name="advancedsetting" onnewscene="if(!webvr.isenabled, js(initAdvancedSetting(get(xml.scene)));skin_thumb_current(get(last_view_scene_index)); set(last_view_scene_index,get(scene[get(xml.scene)].index)));"
  1137. onloadcomplete="js(setInitAngle());" onviewchange="js(__krfn.angle.radarRotate(get(xml.scene),get(view.hlookat)));"
  1138. onclick="skin_showthumbs(false);" keep="true"/> -->
  1139. <action name="do_crop_animation">registerattribute(xframes, calc((imagewidth / %1) BOR 0));
  1140. registerattribute(yframes, calc((imageheight / %2) BOR 0)); registerattribute(frames, calc(xframes * yframes));
  1141. registerattribute(frame, 0); set(crop, '0|0|%1|%2'); setinterval(calc('crop_anim_' + name), calc(1.0 / %3),
  1142. if(loaded, inc(frame); if(frame GE frames, if(onlastframe !== null, onlastframe() ); set(frame,0); ); mod(xpos,
  1143. frame, xframes); div(ypos, frame, xframes); Math.floor(ypos); mul(xpos, %1); mul(ypos, %2); calc(crop, xpos +
  1144. '|' + ypos + '|%1|%2'); , clearinterval(calc('crop_anim_' + name)); ); );
  1145. </action>
  1146. <action name="hotspot_enterVR">
  1147. for(set(i,0), i LT hotspot.count, inc(i), copy(lhotspot, hotspot[get(i)]);
  1148. if(lhotspot.hsvrfalse,
  1149. set(lhotspot.visible,false);
  1150. );
  1151. if(lhotspot.hsvrtrue,
  1152. set(lhotspot.visible,true);
  1153. );
  1154. );
  1155. </action>
  1156. <action name="hotspot_exitVR">for(set(i,0), i LT hotspot.count, inc(i), copy(lhotspot, hotspot[get(i)]);
  1157. if(lhotspot.hsvrfalse, set(lhotspot.visible,true); ); if(lhotspot.hsvrtrue, set(lhotspot.visible,false); ); );
  1158. </action>
  1159. <action name="addSceneChangeHotSpot">
  1160. set(schp_name,%2);
  1161. addhotspot(get(schp_name));
  1162. set(hotspot[get(schp_name)].url,%1);
  1163. set(hotspot[get(schp_name)].ath,%4);
  1164. set(hotspot[get(schp_name)].atv,%5);
  1165. set(hotspot[get(schp_name)].linkedscene,%3);
  1166. set(hotspot[get(schp_name)].width,'prop');
  1167. set(hotspot[get(schp_name)].height,'50');
  1168. set(hotspot[get(schp_name)].visible,%8);
  1169. set(hotspot[get(schp_name)].hsvrfalse,true);
  1170. if(%7 == false,
  1171. set(hotspot[get(schp_name)].onclick,'looktohotspot(get(name));loadscene(get(linkedscene), null, MERGE, BLEND(1));'); ,
  1172. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1173. set(hotspot[get(schp_name)].onup,'js(updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"scene"));');
  1174. );
  1175. if(%6 == '1', txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(128,128, 60);"); );
  1176. txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(scene[get(linkedscene)].title);
  1177. if(webvr.isenabled,set(visible,false));
  1178. txtadd(vrhs,'vr',get(name));
  1179. addhotspot(get(vrhs));
  1180. copy(hotspot[get(vrhs)].url,url);
  1181. copy(hotspot[get(vrhs)].ath,ath);
  1182. copy(hotspot[get(vrhs)].atv,atv);
  1183. copy(hotspot[get(vrhs)].linkedscene,linkedscene);
  1184. copy(hotspot[get(vrhs)].width,width);
  1185. copy(hotspot[get(vrhs)].height,height);
  1186. copy(hotspot[get(vrhs)].onclick,onclick);
  1187. if(%6 == '1',
  1188. txtadd(hotspot[get(vrhs)].onloaded
  1189. ,
  1190. 'do_crop_animation(128,128, 60);');
  1191. );
  1192. txtadd(hotspot[get(vrhs)].onloaded,
  1193. 'if(webvr.isenabled,set(visible,true),set(visible,false));');
  1194. set(hotspot[get(vrhs)].visible,false);
  1195. set(hotspot[get(vrhs)].hsvrtrue,true); ");
  1196. </action>
  1197. <action name="addLinkHotSpot">
  1198. set(schp_name,%2);
  1199. addhotspot(get(schp_name)); set(hotspot[get(schp_name)].url,%1);
  1200. set(hotspot[get(schp_name)].ath,%4); set(hotspot[get(schp_name)].atv,%5);
  1201. set(hotspot[get(schp_name)].hotspottitle,%3); set(hotspot[get(schp_name)].hotspotlink,%9);
  1202. set(hotspot[get(schp_name)].width,'prop'); set(hotspot[get(schp_name)].height,'50');
  1203. set(hotspot[get(schp_name)].visible,%8);
  1204. set(hotspot[get(schp_name)].onhover,showtext(%3,skintext));
  1205. if(%7 == false,
  1206. set(hotspot[get(schp_name)].onclick,'js(linkopen(get(hotspot[get(name)].hotspotlink),%11));'); ,
  1207. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1208. set(hotspot[get(schp_name)].onup,'js(updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"link"));'););
  1209. if(%6 == '1',
  1210. txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(128,128, 60);"); );
  1211. if(%10 == true,
  1212. txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(hotspot[get(name)].hotspottitle);");
  1213. set(hotspot[get(schp_name)].onhover,null);
  1214. );
  1215. </action>
  1216. <action name="addWordHotSpot">
  1217. set(schp_name,%2);
  1218. addhotspot(get(schp_name));
  1219. set(hotspot[get(schp_name)].url,%1);
  1220. set(hotspot[get(schp_name)].ath,%4);
  1221. set(hotspot[get(schp_name)].atv,%5);
  1222. set(hotspot[get(schp_name)].hotspottitle,%3);
  1223. set(hotspot[get(schp_name)].wordcontent,%9);
  1224. set(hotspot[get(schp_name)].width,'prop');
  1225. set(hotspot[get(schp_name)].height,'50');
  1226. set(hotspot[get(schp_name)].visible,%8);
  1227. set(hotspot[get(schp_name)].onhover,showtext(%3,skintext));
  1228. if(%7 == false,
  1229. set(hotspot[get(schp_name)].onclick,'toggle_word_show(true,get(hotspot[get(name)].hotspottitle),get(hotspot[get(name)].wordcontent));');
  1230. ,
  1231. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1232. set(hotspot[get(schp_name)].onup,'js(updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"text"));');
  1233. );
  1234. if(%6 == '1',
  1235. txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(128,128, 60);"); );
  1236. if(%10 == true,
  1237. txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(hotspot[get(name)].hotspottitle);");
  1238. set(hotspot[get(schp_name)].onhover,null);
  1239. );
  1240. </action>
  1241. <action name="addvideo_tie_hotspot">
  1242. set(schp_name,%2);
  1243. addhotspot(get(schp_name));
  1244. if(device.flash,
  1245. set(hotspot[get(schp_name)].url,'%SWFPATH%/plugins/videoplayer.swf');
  1246. ,
  1247. if(device.android,
  1248. set(hotspot[get(schp_name)].url,'%SWFPATH%/plugins/videoplayer2.js');
  1249. ,
  1250. set(hotspot[get(schp_name)].url,'%SWFPATH%/plugins/videoplayer.js?v=103103');
  1251. );
  1252. );
  1253. if(device.ios,
  1254. if(device.ios11,
  1255. set(hotspot[get(schp_name)].videourl,%1);
  1256. ,
  1257. txtadd(localurl,'/data/mediares/',%18);
  1258. set(hotspot[get(schp_name)].videourl,%1);
  1259. );
  1260. ,
  1261. set(hotspot[get(schp_name)].videourl,%1);
  1262. );
  1263. set(hotspot[get(schp_name)].posterurl,%17);
  1264. set(hotspot[get(schp_name)].hotspottitle,%3);
  1265. set(hotspot[get(schp_name)].ath,%4);
  1266. set(hotspot[get(schp_name)].atv,%5);
  1267. set(hotspot[get(schp_name)].distorted,true);
  1268. set(hotspot[get(schp_name)].edge,'center');
  1269. set(hotspot[get(schp_name)].scale,'1.0');
  1270. set(hotspot[get(schp_name)].rx,%6);
  1271. set(hotspot[get(schp_name)].ry,%7);
  1272. set(hotspot[get(schp_name)].rz,%8);
  1273. set(hotspot[get(schp_name)].ox,%9);
  1274. set(hotspot[get(schp_name)].oy,%10);
  1275. set(hotspot[get(schp_name)].loop,%11);
  1276. set(hotspot[get(schp_name)].depth,%12);
  1277. set(hotspot[get(schp_name)].pausedonstart,%13);
  1278. set(hotspot[get(schp_name)].width,%14);
  1279. set(hotspot[get(schp_name)].height,%15);
  1280. set(hotspot[get(schp_name)].onclick,'togglevideoplay(%2)');
  1281. if(%16 ==true,
  1282. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1283. set(hotspot[get(schp_name)].onup,'js(update_video_tie_pos(get(xml.scene),get(name),get(ath),get(atv),"text"));');
  1284. ,
  1285. set(hotspot[get(schp_name)].capture,false);
  1286. txtadd(schp_name_btn,get(schp_name),'_btn');
  1287. addhotspot(get(schp_name_btn));
  1288. set(hotspot[get(schp_name_btn)].url,'%SWFPATH%/skin/hs_video.png');
  1289. set(hotspot[get(schp_name_btn)].scale,0.5);
  1290. set(hotspot[get(schp_name_btn)].zorder,50);
  1291. set(hotspot[get(schp_name_btn)].ath,%4);
  1292. set(hotspot[get(schp_name_btn)].atv,%5);
  1293. if(%13 == false, set(hotspot[get(schp_name_btn)].visible,false););
  1294. set(hotspot[get(schp_name_btn)].onclick,'togglevideoplay(%2)');
  1295. );
  1296. </action>
  1297. <action name="togglevideoplay">
  1298. set(videohotspot,%1);
  1299. txtadd(videohotspot_btn,get(videohotspot),'_btn');
  1300. if(hotspot[get(videohotspot)].ispaused,
  1301. set(hotspot[get(videohotspot_btn)].visible,false);
  1302. hotspot[get(videohotspot)].play();
  1303. ,
  1304. set(hotspot[get(videohotspot_btn)].visible,true);
  1305. hotspot[get(videohotspot)].pause();
  1306. );
  1307. </action>
  1308. <action name="addimg_tie_hotspot">
  1309. set(schp_name,%2);
  1310. addhotspot(get(schp_name));
  1311. set(hotspot[get(schp_name)].url,%1);
  1312. set(hotspot[get(schp_name)].hotspottitle,%3);
  1313. set(hotspot[get(schp_name)].ath,%4);
  1314. set(hotspot[get(schp_name)].atv,%5);
  1315. set(hotspot[get(schp_name)].distorted,true);
  1316. set(hotspot[get(schp_name)].edge,'center');
  1317. set(hotspot[get(schp_name)].scale,'1.0');
  1318. set(hotspot[get(schp_name)].distorted,true);
  1319. set(hotspot[get(schp_name)].rx,%6);
  1320. set(hotspot[get(schp_name)].ry,%7);
  1321. set(hotspot[get(schp_name)].rz,%8);
  1322. set(hotspot[get(schp_name)].ox,%9);
  1323. set(hotspot[get(schp_name)].oy,%10);
  1324. set(hotspot[get(schp_name)].loop,%11);
  1325. set(hotspot[get(schp_name)].depth,%12);
  1326. set(hotspot[get(schp_name)].pausedonstart,%13);
  1327. set(hotspot[get(schp_name)].width,%14);
  1328. set(hotspot[get(schp_name)].height,%15);
  1329. if(%16 ==true,
  1330. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1331. set(hotspot[get(schp_name)].onup,'js(update_video_tie_pos(get(xml.scene),get(name),get(ath),get(atv),"text"));');
  1332. );
  1333. </action>
  1334. <action name="editImgTextHotSpot">
  1335. set(schp_name,%2);
  1336. set(hotspot[get(schp_name)].url,%1);
  1337. set(hotspot[get(schp_name)].hotspottitle,%3);
  1338. set(hotspot[get(schp_name)].hotspotlink,%4);
  1339. </action>
  1340. <action name="addImgTextHotSpot">
  1341. set(schp_name,%2);
  1342. set(hotspot[get(schp_name)].url,%1);
  1343. set(hotspot[get(schp_name)].ath,%4);
  1344. set(hotspot[get(schp_name)].atv,%5);
  1345. set(hotspot[get(schp_name)].hotspottitle,%3);
  1346. set(hotspot[get(schp_name)].wordcontent,%9);
  1347. set(hotspot[get(schp_name)].hotspotlink,%8);
  1348. set(hotspot[get(schp_name)].alpha,1);
  1349. set(hotspot[get(schp_name)].scale,1);
  1350. set(hotspot[get(schp_name)].autoalpha,false);
  1351. set(hotspot[get(schp_name)].distorted,false);
  1352. set(hotspot[get(schp_name)].width,'prop');
  1353. set(hotspot[get(schp_name)].height,'50');
  1354. set(hotspot[get(schp_name)].visible,true);
  1355. set(hotspot[get(schp_name)].onhover,showtext(get(hotspottitle),skintext));
  1356. addhotspot(get(schp_name));
  1357. set(hotspot[get(schp_name)].onclick,'js(__krfn.utils.linkopen(get(hotspot[get(name)].hotspotlink),%2));');
  1358. if(device.mobile,set(hotspot[get(schp_name)].scale,0.8));
  1359. if(%7 == false,
  1360. ,
  1361. set(hotspot[get(schp_name)].ondown,draghotspot(););
  1362. set(hotspot[get(schp_name)].onup,js(__krfn.angle.updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"imgtext")));
  1363. );
  1364. if(%6 == '1',
  1365. txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(60,60, 30);");
  1366. );
  1367. txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(hotspot[get(name)].hotspottitle);");
  1368. set(hotspot[get(schp_name)].onhover,null);
  1369. set(hotspot[get(schp_name)].onout,null);
  1370. set(hotspot[get(schp_name)].onover,null);
  1371. txtadd(tooltipname, 'tooltip_', get(schp_name));
  1372. if(%10 == true,
  1373. set(plugin[get(tooltipname)].visible,true);,
  1374. set(plugin[get(tooltipname)].visible,false);
  1375. );
  1376. </action>
  1377. <action name="addPolygonHotSpot">
  1378. set(schp_name,%1);
  1379. addhotspot(get(schp_name));
  1380. set(hotspot[get(schp_name)].keep,false);
  1381. set(hotspot[get(schp_name)].visible,true);
  1382. set(hotspot[get(schp_name)].handcursor,true);
  1383. set(hotspot[get(schp_name)].capture,true);
  1384. set(hotspot[get(schp_name)].blendmode,'normal');
  1385. set(hotspot[get(schp_name)].style,'');
  1386. set(hotspot[get(schp_name)].alpha,1.0);
  1387. set(hotspot[get(schp_name)].autoalpha,false);
  1388. set(hotspot[get(schp_name)].fillcolor,'0xDDDDDD');
  1389. set(hotspot[get(schp_name)].borderalpha,0.5);
  1390. set(hotspot[get(schp_name)].borderwidth,1.0);
  1391. set(hotspot[get(schp_name)].bordercolor,'0xCCCCC');
  1392. set(hotspot[get(schp_name)].borderalpha,1.0);
  1393. set(hotspot[get(schp_name)].polyline,%4);
  1394. if(%2 == true,
  1395. set(hotspot[get(schp_name)].onclick,js(dothing(get(hotspot[get(name)]),%3)));
  1396. );
  1397. </action>
  1398. <action name="addVoiceHotSpot">set(schp_name,%2); addhotspot(get(schp_name)); set(hotspot[get(schp_name)].url,%1);
  1399. set(hotspot[get(schp_name)].ath,%4); set(hotspot[get(schp_name)].atv,%5);
  1400. set(hotspot[get(schp_name)].hotspottitle,%3); set(hotspot[get(schp_name)].musicsrc,%9);
  1401. set(hotspot[get(schp_name)].width,'prop'); set(hotspot[get(schp_name)].height,'50');
  1402. set(hotspot[get(schp_name)].visible,%8);
  1403. set(hotspot[get(schp_name)].onhover,showtext(get(hotspottitle),skintext));
  1404. if(%7 == false,
  1405. set(hotspot[get(schp_name)].onclick,'play_hotspot_voice(get(hotspot[get(name)].musicsrc));'); ,
  1406. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1407. set(hotspot[get(schp_name)].onup,'js(updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"voice"));');
  1408. ); if(%6 == '1', txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(128,128, 60);"););
  1409. if(%10 == true,
  1410. txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(hotspot[get(name)].hotspottitle);");
  1411. set(hotspot[get(schp_name)].onhover,null););
  1412. </action>
  1413. <action name="addAroundHotSpot">set(schp_name,%2); if(around_object_id === null,set(around_object_id,0));
  1414. addhotspot(get(schp_name)); set(hotspot[get(schp_name)].url,%1); set(hotspot[get(schp_name)].ath,%4);
  1415. set(hotspot[get(schp_name)].atv,%5); set(hotspot[get(schp_name)].hotspottitle,%3);
  1416. set(hotspot[get(schp_name)].aroundpath,%9); if('%10' == null OR '%10' == undefined,
  1417. set(hotspot[get(schp_name)].filecount,36);, set(hotspot[get(schp_name)].filecount,%10); );
  1418. set(hotspot[get(schp_name)].aroundobjectid,get(around_object_id)); set(hotspot[get(schp_name)].width,'prop');
  1419. set(hotspot[get(schp_name)].height,'50'); set(hotspot[get(schp_name)].visible,%8);
  1420. if(%7 == false,
  1421. set(hotspot[get(schp_name)].onclick,'buildframes(get(hotspot[get(name)].aroundpath),get(hotspot[get(name)].filecount),get(hotspot[get(name)].aroundobjectid));set(settings.objectid,get(hotspot[get(name)].aroundobjectid));set(settings.objectnum,36);');
  1422. inc(around_object_id); , set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1423. set(hotspot[get(schp_name)].onup,'js(updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"around"));');
  1424. ); if(%6 == '1', txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(128,128, 60);"); ); if(%11 == true,
  1425. txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(hotspot[get(name)].hotspottitle);"); );
  1426. </action>
  1427. <action name="addImgHotSpot">
  1428. set(schp_name,%2);
  1429. addhotspot(get(schp_name));
  1430. set(hotspot[get(schp_name)].url,%1);
  1431. set(hotspot[get(schp_name)].ath,%4);
  1432. set(hotspot[get(schp_name)].atv,%5);
  1433. set(hotspot[get(schp_name)].hotspottitle,%3);
  1434. set(hotspot[get(schp_name)].galleryname,%9);
  1435. set(hotspot[get(schp_name)].width,'prop');
  1436. set(hotspot[get(schp_name)].height,'50');
  1437. set(hotspot[get(schp_name)].visible,%8);
  1438. set(hotspot[get(schp_name)].onhover,showtext(get(hotspottitle),skintext));
  1439. if(%7 == false,
  1440. set(hotspot[get(schp_name)].onclick,'js(toggleBtns());show_gallery(get(galleryname));');
  1441. ,
  1442. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1443. set(hotspot[get(schp_name)].onup,'js(updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"image"));');
  1444. );
  1445. if(%6 == '1', txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(128,128, 60);");
  1446. );
  1447. if(%10 == true, txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(hotspot[get(name)].hotspottitle);");
  1448. set(hotspot[get(schp_name)].onhover,null);
  1449. );
  1450. </action>
  1451. <action name="addObjHotSpot">
  1452. set(schp_name,%2);
  1453. addhotspot(get(schp_name));
  1454. set(hotspot[get(schp_name)].url,%1);
  1455. set(hotspot[get(schp_name)].ath,%4);
  1456. set(hotspot[get(schp_name)].atv,%5);
  1457. set(hotspot[get(schp_name)].hotspottitle,%3);
  1458. set(hotspot[get(schp_name)].width,'prop');
  1459. set(hotspot[get(schp_name)].height,'50');
  1460. set(hotspot[get(schp_name)].visible,%8);
  1461. set(hotspot[get(schp_name)].onhover,showtext(get(hotspottitle),skintext));
  1462. if(%7 == false,
  1463. set(hotspot[get(schp_name)].onclick,'js(obj_buildframes(%9,%11));');
  1464. ,
  1465. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1466. set(hotspot[get(schp_name)].onup,'js(updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"obj"));');
  1467. );
  1468. if(%6 == '1',
  1469. txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(128,128, 60);");
  1470. );
  1471. if(%10 == true,
  1472. txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(hotspot[get(name)].hotspottitle);");
  1473. set(hotspot[get(schp_name)].onhover,null);
  1474. );
  1475. </action>
  1476. <action name="addRedpackHotSpot">
  1477. set(schp_name,%2);
  1478. addhotspot(get(schp_name));
  1479. set(hotspot[get(schp_name)].url,%1);
  1480. set(hotspot[get(schp_name)].ath,%4);
  1481. set(hotspot[get(schp_name)].atv,%5);
  1482. set(hotspot[get(schp_name)].hotspottitle,%3);
  1483. set(hotspot[get(schp_name)].width,'prop');
  1484. set(hotspot[get(schp_name)].height,'50');
  1485. set(hotspot[get(schp_name)].visible,%8);
  1486. set(hotspot[get(schp_name)].onhover,showtext(get(hotspottitle),skintext));
  1487. if(%7 == false,
  1488. set(hotspot[get(schp_name)].onclick,'js(show_redpack(%9,%3));');
  1489. ,
  1490. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1491. set(hotspot[get(schp_name)].onup,'js(updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"redpack"));');
  1492. );
  1493. if(%6 == '1',
  1494. txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(128,128, 60);");
  1495. );
  1496. if(%10 == true,
  1497. txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(hotspot[get(name)].hotspottitle);");
  1498. set(hotspot[get(schp_name)].onhover,null);
  1499. );
  1500. </action>
  1501. <action name="addVideoHotSpot">
  1502. set(schp_name,%2);
  1503. addhotspot(get(schp_name));
  1504. set(hotspot[get(schp_name)].url,%1);
  1505. set(hotspot[get(schp_name)].ath,%4);
  1506. set(hotspot[get(schp_name)].atv,%5);
  1507. set(hotspot[get(schp_name)].hotspottitle,%3);
  1508. set(hotspot[get(schp_name)].width,'prop');
  1509. set(hotspot[get(schp_name)].height,'50');
  1510. set(hotspot[get(schp_name)].visible,%8);
  1511. set(hotspot[get(schp_name)].onhover,showtext(get(hotspottitle),skintext));
  1512. if(%7 == false,
  1513. set(hotspot[get(schp_name)].onclick,js(playvideo(%9)) );
  1514. ,
  1515. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1516. set(hotspot[get(schp_name)].onup,'js(updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"video"));');
  1517. );
  1518. if(%6 == '1',
  1519. txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(128,128, 60);"); );
  1520. if(%10 == true,
  1521. txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(hotspot[get(name)].hotspottitle);");
  1522. set(hotspot[get(schp_name)].onhover,null);
  1523. );
  1524. </action>
  1525. <action name="addProductHotSpot">
  1526. set(schp_name,%2);
  1527. addhotspot(get(schp_name));
  1528. set(hotspot[get(schp_name)].url,%1);
  1529. set(hotspot[get(schp_name)].ath,%4);
  1530. set(hotspot[get(schp_name)].atv,%5);
  1531. set(hotspot[get(schp_name)].hotspottitle,%3);
  1532. set(hotspot[get(schp_name)].width,'prop');
  1533. set(hotspot[get(schp_name)].height,'50');
  1534. set(hotspot[get(schp_name)].visible,%8);
  1535. if(%7 == false,
  1536. set(hotspot[get(schp_name)].onclick,'js(product_buildframes(%10));');
  1537. ,
  1538. set(hotspot[get(schp_name)].ondown,'draghotspot();');
  1539. set(hotspot[get(schp_name)].onup,'js(updateHotSpotData(get(xml.scene),get(name),get(ath),get(atv),"product"));');
  1540. );
  1541. if(%6 == '1',
  1542. txtadd(hotspot[get(schp_name)].onloaded,"do_crop_animation(128,128, 60);");
  1543. );
  1544. if(%9 == true,
  1545. txtadd(hotspot[get(schp_name)].onloaded,"add_all_the_time_tooltip(hotspot[get(name)].hotspottitle);");
  1546. );
  1547. </action>
  1548. <action name="add_all_the_time_tooltip">
  1549. txtadd(tooltipname, 'tooltip_', get(name)); addplugin(get(tooltipname));
  1550. txtadd(plugin[get(tooltipname)].parent, 'hotspot[', get(name), ']');
  1551. set(plugin[get(tooltipname)].url,'%SWFPATH%/plugins/textfield.swf');
  1552. set(plugin[get(tooltipname)].align,right);
  1553. set(plugin[get(tooltipname)].edge,left);
  1554. set(plugin[get(tooltipname)].x,0);
  1555. set(plugin[get(tooltipname)].y,2);
  1556. set(plugin[get(tooltipname)].autowidth,true);
  1557. set(plugin[get(tooltipname)].height,36);
  1558. if(device.mobile,set(plugin[get(tooltipname)].scale,0.7));
  1559. if(device.mobile,set(plugin[get(tooltipname)].height,48));
  1560. set(plugin[get(tooltipname)].background,true);
  1561. set(plugin[get(tooltipname)].backgroundcolor,0x000000);
  1562. set(plugin[get(tooltipname)].roundedge,5);
  1563. set(plugin[get(tooltipname)].backgroundalpha,0.567);
  1564. set(plugin[get(tooltipname)].padding,5);
  1565. set(plugin[get(tooltipname)].vcenter,true);
  1566. set(plugin[get(tooltipname)].border,true);
  1567. set(plugin[get(tooltipname)].borderwidth,1.9);
  1568. set(plugin[get(tooltipname)].bordercolor,0xBDB76B);
  1569. set(plugin[get(tooltipname)].glow,0);
  1570. set(plugin[get(tooltipname)].glowcolor,0xFFFFFF);
  1571. set(plugin[get(tooltipname)].css,'text-align:center; color:#FFFFFF; font-family:STXihei; font-size:14px;');
  1572. if(device.mobile,
  1573. set(plugin[get(tooltipname)].css,'text-align:center; color:#FFFFFF;
  1574. font-family:STXihei; font-weight:bold; font-size:14px;'); );
  1575. set(plugin[get(tooltipname)].textshadow,0);
  1576. set(plugin[get(tooltipname)].textshadowrange,6.0);
  1577. set(plugin[get(tooltipname)].textshadowangle,90);
  1578. if(text ==
  1579. '' OR text === null, copy(plugin[get(tooltipname)].html,%1), copy(plugin[get(tooltipname)].html,text) );
  1580. set(plugin[get(tooltipname)].enabled,false);
  1581. </action>
  1582. <layer name="mapcontainer" keep="true" type="container" bgcolor="0x000000" bgalpha="0.2" align="righttop" x="95"
  1583. y="0" width="400" height="300" visible="false">
  1584. <!-- <layer name="map" url="" align="center" x="0" y="0" width="392" height="292" handcursor="false"
  1585. scalechildren="false">
  1586. <layer name="radarmask" type="container" align="lefttop" width="100%" height="100%" maskchildren="true">
  1587. <layer name="radar" visible="false" url="%SWFPATH%/plugins/radar.swf" alturl="%SWFPATH%/plugins/radar.js" align="lefttop" edge="center"
  1588. zorder="1" scale="0.5" fillcolor="0xFFFFFF" fillalpha="0.8" linecolor="0xFF0000" linewidth="0.5"
  1589. linealpha="0.5" headingoffset="0"/>
  1590. <layer name="activespot" url="%SWFPATH%/static/images/kr/radar-active.png" scale="1.0" oy="0" align="lefttop"
  1591. edge="center" zorder="3" visible="false"/>
  1592. </layer>
  1593. </layer> -->
  1594. <layer name="mapzoom" style="mapzooms" keep="true" align="center" y="164" x="12" visible="true">
  1595. </layer>
  1596. </layer>
  1597. <layer name="mapzoomclose" style="mapzoomcloses" keep="true" visible="false">
  1598. </layer>
  1599. <style name="mapzoomcloses" url="%SWFPATH%/skin/close.png" alpha="1" scale="0.4" parent="stage" zorder="99" visible="false"
  1600. onclick="zoomRadarclose();"/>
  1601. <style name="mapzooms" url="%SWFPATH%/skin/mapZoom.png" alpha="0.8" scale="0.7" oy="0" align="center" zorder="2"
  1602. onclick="zoomRadar();"/>
  1603. <style name="mapcc" devices="!mobile" url="%SWFPATH%/plugins/scrollarea.swf" alturl="%SWFPATH%/plugins/scrollarea.js" keep="true" align="righttop" x="95" y="0" />
  1604. <style name="spot" url="%SWFPATH%/static/images/kr/radar-out.png" scale="1.0" oy="0" align="lefttop" edge="center" zorder="2"
  1605. onclick="subtxt(spotid,get(name),5,38);if(spotid != get(xml.scene), loadscene(get(spotid),null,MERGE,BLEND(1)); );"/>
  1606. <action devices="!mobile" name="zoomRadar">
  1607. set(layer[mapzoomclose].visible,true);
  1608. set(layer[mapzoom].visible,false);
  1609. set(layer[mapcontainer].width,100%);
  1610. set(layer[mapcontainer].height,100%);
  1611. set(layer[mapcontainer].x,0);
  1612. set(layer[mapcontainer].bgalpha,0.5);
  1613. set(layer[map].scale,2.4);
  1614. js(toggleBtns(0));
  1615. set(layer[mapcontainer].align,center);
  1616. set(layer[map].align,center);
  1617. set(layer[mapzoomclose].align,righttop);
  1618. </action>
  1619. <action devices="mobile" name="zoomRadar">
  1620. set(layer[mapzoomclose].visible,true);
  1621. set(layer[mapzoom].visible,false);
  1622. set(layer[mapcontainer].width,100%);
  1623. set(layer[mapcontainer].height,100%);
  1624. set(layer[mapcontainer].x,0);
  1625. set(layer[mapcontainer].bgalpha,0.5);
  1626. set(layer[map].scale,1.4);
  1627. js(toggleBtns(0));
  1628. set(layer[mapcontainer].align,center);
  1629. set(layer[map].align,center);
  1630. set(layer[mapzoomclose].align,righttop);
  1631. </action>
  1632. <action name="zoomRadarclose">
  1633. set(layer[mapzoom].visible,true);
  1634. set(layer[mapcontainer].width,400);
  1635. set(layer[mapcontainer].height,300);
  1636. set(layer[mapcontainer].x,95);
  1637. set(layer[mapcontainer].bgalpha,0.2);
  1638. set(layer[map].scale,1);
  1639. set(layer[mapcontainer].align,righttop);
  1640. set(layer[map].align,center);
  1641. js(toggleBtns(1));
  1642. set(layer[mapzoomclose].visible,false);
  1643. </action>
  1644. <action name="activatespot">txtadd(spotidnow,'spot_',get(xml.scene)); copy(layer[radar].x, layer[get(spotidnow)].x);
  1645. copy(layer[radar].y, layer[get(spotidnow)].y); copy(layer[activespot].x, layer[get(spotidnow)].x);
  1646. copy(layer[activespot].y, layer[get(spotidnow)].y); set(layer[radar].heading, %1); set(layer[radar].visible,
  1647. true); set(layer[activespot].visible, true); set(layer[get(spotidnow)].visible, false);
  1648. </action>
  1649. <action name="addTourGuidePoint">set(tour_point_name, %1); addhotspot(get(tour_point_name));
  1650. set(hotspot[get(tour_point_name)].url,'%SWFPATH%/static/images/kr/tourpoint.png');
  1651. set(hotspot[get(tour_point_name)].ath,%2); set(hotspot[get(tour_point_name)].atv,%3);
  1652. set(hotspot[get(tour_point_name)].visible,%5); set(hotspot[get(tour_point_name)].width,40);
  1653. set(hotspot[get(tour_point_name)].height,40); set(hotspot[get(tour_point_name)].zoom,false);
  1654. set(hotspot[get(tour_point_name)].ondown,'draghotspot();');
  1655. set(hotspot[get(tour_point_name)].onup,'js(putTourGuideLocation(get(name),get(ath),get(atv)));');
  1656. set(hotspot[get(tour_point_name)].onclick,'tourpointclick();'); txtadd(tooltipname, 'tooltip_',
  1657. get(tour_point_name)); addlayer(get(tooltipname)); txtadd(layer[get(tooltipname)].parent,
  1658. 'hotspot[',get(tour_point_name),']'); set(layer[get(tooltipname)].url,'%SWFPATH%/plugins/textfield.swf');
  1659. set(layer[get(tooltipname)].align,center); set(layer[get(tooltipname)].edge,center);
  1660. set(layer[get(tooltipname)].width,40); set(layer[get(tooltipname)].height,40);
  1661. set(layer[get(tooltipname)].background,false); set(layer[get(tooltipname)].backgroundcolor,0x039be5);
  1662. set(layer[get(tooltipname)].roundedge,20); set(layer[get(tooltipname)].glow,4);
  1663. set(layer[get(tooltipname)].glowcolor,0xFFFFFF); set(layer[get(tooltipname)].css,'text-align:center;
  1664. line-height:40px;color:#000000; font-family:"Microsoft YaHei"; font-weight:normal; font-size:14px;');
  1665. set(layer[get(tooltipname)].html,%4); set(layer[get(tooltipname)].enabled,false);
  1666. </action>
  1667. <action name="tourpointclick">js(krpTourPointClick(get(name)));</action>
  1668. <layer name="wordcontainer" keep="true" type="container" bgcolor="0x000000" bgalpha="0.8" align="lefttop" x="0"
  1669. y="0" width="100%" height="100%" visible="false" zorder="100" bgcapture="true"
  1670. onclick="toggle_word_show(false)">
  1671. <layer name="wordtitle" parent="wordcontainer" keep="true" type="container" align="top" width="100%"
  1672. height="20%">
  1673. <layer name="wordtitlestr" url="%SWFPATH%/plugins/textfield.swf" align="center" background="false"
  1674. css="text-align:center;color:#ffffff;font-weight:700; font-size:24px;" html=""></layer>
  1675. </layer>
  1676. <layer name="wordcontent" parent="wordcontainer" keep="true" type="container" align="bottom" edge="bottom"
  1677. width="100%" height="80%" bgcolor="0xaaaaaa">
  1678. <layer name="wordcontentstr" url="%SWFPATH%/plugins/textfield.swf" align="top" width="80%"
  1679. background="false" css="text-align:left;color:#ffffff;font-weight:500; font-size:18px;" html=""
  1680. visible="true"></layer>
  1681. </layer>
  1682. </layer>
  1683. <action name="toggle_word_show">if(%1 == true, set(layer[wordtitlestr].html,%2); set(layer[wordcontentstr].html,%3);
  1684. set(layer[wordcontainer].visible, true); tween(layer[wordcontainer].alpha, 1.0, 0.5,easeOutQuad); ,
  1685. tween(layer[wordcontainer].alpha, 0.0, 0.5,easeOutQuad,set(layer[wordcontainer].visible, false);); );
  1686. </action>
  1687. <action name="play_hotspot_voice">stopsound(hotspotbgm); playsound(hotspotbgm,%1,1);</action>
  1688. <events onresize="make_gallery(get(activeGallery));"/>
  1689. <layer name="gallery" type="container" align="center" width="100%" height="100%" alpha="0" autoalpha="true"
  1690. bgcolor="0x000000" bgalpha="0.8" keep="true" zorder="100">
  1691. <!-- <layer name="gallery_scrollarea" url="%SWFPATH%/plugins/scrollarea.swf" alturl="%SWFPATH%/plugins/scrollarea.js"
  1692. keep="true" align="left" width="0" height="100%" zorder="1" direction="h"
  1693. ondown="set(gallery_scrollarea_start_pos, get(x))"></layer>
  1694. <layer name="arrow_left" align="left" x="10" keep="true" visible="false" zorder="2" onclick="move_image(left)"
  1695. url="%SWFPATH%/static/images/kr/left-white.png"/>
  1696. <layer name="arrow_right" align="right" x="10" keep="true" visible="false" zorder="2"
  1697. onclick="move_image(right)" url="%SWFPATH%/static/images/kr/right-white.png"/>
  1698. <layer name="gallery_close" align="righttop" x="10" y="10" keep="true" zorder="100"
  1699. onclick="hide_gallery();js(toggleBtns(true));" url="%SWFPATH%/static/images/kr/close.png"/> -->
  1700. </layer>
  1701. <action name="open_show_scene_thumb">
  1702. if(scene.count GT 1, skin_showthumbs(false); );
  1703. </action>
  1704. <settings imagewidth="" imageheight="" objectid="" objectnum=""/>
  1705. <events onresize="updateframeresize(container_obj,get(settings.imagewidth),get(settings.imageheight));"
  1706. onmousewheel="updateframesscale();js(initHotspotSetting(get(xml.scene)));"/>
  1707. <style name="frame" keep="true" visible="false" width="100%" height="100%" scale_o="" align="center"
  1708. onloaded="set(plugin[loadingtext].visible,false); updateframeresize(container_obj,get(imagewidth),get(imageheight));copy(scale_o,scale); copy(settings.imagewidth,imagewidth); copy(settings.imageheight,imageheight);set(layer[container_obj].visible,true);"
  1709. ondown="copy(oldmousex,mouse.x);domouserotate();"
  1710. onover=" set(iszoom, true); set(startzoom, true); copy(copy_mousefovchange, control.mousefovchange); copy(copy_touchzoom, control.touchzoom); set(control.mousefovchange, 0); set(control.touchzoom, false);"
  1711. onout=" set(iszoom, false); copy(control.mousefovchange, copy_mousefovchange); copy(control.touchzoom, copy_touchzoom);"/>
  1712. <layer name="container_obj" type="container" align="center" visible="false" maskchildren="true" bgcolor="0x000000"
  1713. width="900" height="600" bgalpha="0.5" scalechildren="true" bgborder="5 0xFFFFFF 0.9" bgroundedge="3"
  1714. keep="true">
  1715. <layer name="text_mask" type="container" align="leftbottom" y="15" x="0" visible="false" height="10%"
  1716. width="200" bgcolor="0xffffff" bgalpha="0.5" bgcapture="true" zorder="100" bgroundedge="0 3 3 0"
  1717. scalechildren="true">
  1718. <layer name="title" url="%SWFPATH%/plugins/textfield.swf" children="false" enabled="false" align="top"
  1719. autowidth="auto" height="24" vcenter="true" visible="false" border="false" background="false"
  1720. css="text-align:center; color:#FFFFFF; font-family:Arial; font-weight:bold; font-size:20px;" html=""
  1721. onloaded="updatepos();add(layer[text_mask].width,pixelwidth,20); add(layer[text_mask].height,pixelheight,0);"/>
  1722. </layer>
  1723. <layer name="close_mask" type="container" align="righttop" y="10" x="10" height="10%" width="200"
  1724. bgcolor="0xffffff" bgalpha="0.5" bgcapture="true" zorder="100" bgroundedge="3" scalechildren="true">
  1725. <layer name="closetitle" url="%SWFPATH%/plugins/textfield.swf" children="false" enabled="true" align="top"
  1726. width="40" height="24" vcenter="true" border="false" background="false"
  1727. css="text-align:center; color:#FFFFFF; font-family:Arial; font-weight:bold; font-size:16px;"
  1728. html="退出"
  1729. onloaded="updatepos();add(layer[close_mask].width,pixelwidth,10); add(layer[close_mask].height,pixelheight,0);"
  1730. onclick="set(layer[container_obj].visible,false);removeframes();"/>
  1731. </layer>
  1732. <plugin name="loadingtext" url="%SWFPATH%/plugins/textfield.swf" keep="true" zorder="100" visible="true"
  1733. enabled="false" preload="true" align="center" autoheight="true" width="100" background="false"
  1734. html="[p]载入中...[/p]" css="p {color:#FFFFFF; font-family:arial; font-size:16px }"/>
  1735. <layer name="gallerynext" url="%SWFPATH%/skin/gallerybtns.png" align="right" x="0" y="0" zorder="100"
  1736. crop="100|0|100|100" onovercrop="100|100|100|100" ondowncrop="100|100|100|100"
  1737. ondown="set(y,1);dorotate();" onup="set(y,0)" direction="-1"/>
  1738. <layer name="galleryprev" url="%SWFPATH%/skin/gallerybtns.png" align="left" x="0" y="0" zorder="100"
  1739. crop="0|0|100|100" onovercrop="0|100|100|100" ondowncrop="0|100|100|100" ondown="set(y,1);dorotate();"
  1740. onup="set(y,0)" direction="1"/>
  1741. </layer>
  1742. <action name="updateframeresize">div(aspect, %2,%3); mul(new_width, stagewidth, 0.70); div(new_height, new_width,
  1743. aspect); mul(max_height, stageheight, 0.70); if(new_height GT max_height, copy(new_height, max_height);
  1744. mul(new_width, new_height, aspect); ); div(new_width,stagewidth); div(new_height,stageheight);
  1745. mul(new_width,100); mul(new_height,100); roundval(new_width); roundval(new_height); txtadd(layer[%1].width,
  1746. get(new_width),'%'); txtadd(layer[%1].height, get(new_height),'%');
  1747. copy(plugin[frame0].scale_o,plugin[frame0].scale);
  1748. </action>
  1749. <action name="buildframes">if(%3 != settings.objectid, for(set(i,0), i LT %2, inc(i), txtadd(fname,frame,get(i));
  1750. removeplugin(get(fname)); ); ); for(set(i,0), i LT %2, inc(i), txtadd(fname,frame,get(i));
  1751. txtadd(furl,%1,get(i),.jpg?imageView2/2/h/450); addplugin(get(fname));
  1752. set(plugin[get(fname)].parent,layer[container_obj]); plugin[get(fname)].loadstyle(frame);
  1753. copy(plugin[get(fname)].url,furl); ); set(currentframe,0); set(framecount,%2); set(oldmousex,0); showframe(0);
  1754. </action>
  1755. <action name="removeframes">for(set(i,0), i LT framecount, inc(i), txtadd(fname,frame,get(i));
  1756. removeplugin(get(fname)); );
  1757. </action>
  1758. <action name="updateframesscale">layer[container_obj].updatepos(); for(set(i,0), i LT framecount, inc(i),
  1759. txtadd(fname,frame,get(i)); if(iszoom, if(wheeldelta_touchscale GT 0, if(startzoom, set(startzoom,false);
  1760. copy(start_wheeldelta_touchscale, wheeldelta_touchscale); copy(start_imagescale, plugin[get(fname)].scale); );
  1761. div(tmp, wheeldelta_touchscale, start_wheeldelta_touchscale); mul(plugin[get(fname)].scale, start_imagescale,
  1762. tmp); , mul(sit,get(wheeldelta),0.05); mul(sit,plugin[get(fname)].scale); plugin[get(fname)].updatepos();
  1763. add(plugin[get(fname)].scale,sit); if(plugin[get(fname)].scale LT plugin[get(fname)].scale_o,
  1764. copy(plugin[get(fname)].scale,plugin[get(fname)].scale_o);); ); ); );
  1765. </action>
  1766. <action name="showframe">txtadd(fname,frame,get(currentframe));
  1767. txtadd(tempstr,'set(plugin[',get(fname),'].visible,false);'); ifnot(%1 == 0, delayedcall(0.03,get(tempstr)); );
  1768. add(currentframe,%1); if(currentframe LT 0, sub(currentframe,framecount,1); ); if(currentframe == framecount,
  1769. set(currentframe,0); ); txtadd(fname,frame,get(currentframe)); set(plugin[get(fname)].visible,true);
  1770. ifnot(plugin[get(fname)].loaded, set(plugin[loadingtext].visible,true);, set(plugin[loadingtext].visible,false);
  1771. );
  1772. </action>
  1773. <action name="dorotate">if(pressed, showframe(get(direction)); delayedcall(0.05,dorotate();); );</action>
  1774. <action name="domouserotate">if(pressed, sub(temp,oldmousex,mouse.x); if(temp GT 0, set(temp,1); ); if(temp LT 0,
  1775. set(temp,-1); ); showframe(get(temp)); copy(oldmousex,mouse.x); delayedcall(0.03,domouserotate();); );
  1776. </action>
  1777. <krpano flare_dir="%SWFPATH%/skin/lensflare"/>
  1778. <include url="%SWFPATH%/skin/lensflare/core.xml"/>
  1779. <lensflares name="obj">
  1780. <item name="lensitemobj" ath="-29.85" atv="-23.55" scene="" typ="blinkstyle8" dust_effect="false"/>
  1781. </lensflares>
  1782. <action name="ivr_remove_flare">txtadd(na, 'flt_%1_',get(lensflares[obj].item[lensitemobj].name)); txtadd(look,
  1783. 'lookto_%1_',get(lensflares[obj].item[lensitemobj].name)); txtadd(tras,
  1784. 'trash_%1_',get(lensflares[obj].item[lensitemobj].name)); txtadd(dust,
  1785. 'dust_%1_',get(lensflares[obj].item[lensitemobj].name)); if(lensflares[obj].item[lensitemobj].scene == '%1',
  1786. vonp(na); vonp(look); vonp(tras); vonp(dust); vonp(flara_on_scene_scroll); vonh_all(tagmini, lensitemobj); );
  1787. </action>
  1788. <action name="addLensflares">
  1789. set(lensflares[obj].item[lensitemobj].scene,get(xml.scene));
  1790. set(lensflares[obj].item[lensitemobj].ath,%1);
  1791. set(lensflares[obj].item[lensitemobj].atv,%2);
  1792. load_flare_content();
  1793. </action>
  1794. <action name="addSunset">addhotspot(sunset_hs); set(hotspot[sunset_hs].url,'%SWFPATH%/static/images/kr/sunset.png');
  1795. set(hotspot[sunset_hs].ath,%1); set(hotspot[sunset_hs].atv,%2); set(hotspot[sunset_hs].zorder,100);
  1796. set(hotspot[sunset_hs].visible,true);
  1797. set(hotspot[sunset_hs].ondown,'draghotspot();ivr_remove_flare(get(xml.scene));');
  1798. set(hotspot[sunset_hs].onup,'js(updateEffectSetting(get(xml.scene),get(ath),get(atv)));');
  1799. addLensflares('%1','%2');
  1800. </action>
  1801. <action name="removeSunset">removehotspot(sunset_hs); ivr_remove_flare(get(xml.scene));</action>
  1802. <!-- 表盘不动 表针动 -->
  1803. <!-- <layer name="compass" devices="html5.and.webgl" url="compass_bg.png" keep="true" scale="0.4" visible="false" align="lefttop" x="16" y="200" children="false" scalechildren="true" destscale="0.4" onclick="switch(destscale,1.0,0.4);tween(scale,get(destscale));lookto(0,0,90);">
  1804. <layer name="compass1_plate" url="compass_plate.png" keep="true" align="center" zorder="1" />
  1805. <layer name="compass1_pointer" url="compass_pointer.png" keep="true" align="center" zorder="2" />
  1806. <layer name="compass1_ring" url="compass_ring.png" keep="true" align="lefttop" zorder="3" />
  1807. </layer>
  1808. <layer name="compass" devices="mobile" url="compass_bg.png" keep="true" scale="0.3" visible="false" align="lefttop" x="16" y="18%" children="false" scalechildren="true" destscale="0.3" onclick="switch(destscale,1.0,0.3);tween(scale,get(destscale));lookto(0,0,90);">
  1809. <layer name="compass1_plate" url="compass_plate.png" keep="true" align="center" zorder="1" />
  1810. <layer name="compass1_pointer" url="compass_pointer.png" keep="true" align="center" zorder="2" />
  1811. <layer name="compass1_ring" url="compass_ring.png" keep="true" align="lefttop" zorder="3" />
  1812. </layer> -->
  1813. <!-- 视野改变事件 -->
  1814. <events name="compass_events" keep="true" onviewchange="compass_update_rotate();" />
  1815. <!-- 更新指南针旋转数值 -->
  1816. <action name="compass_update_rotate">
  1817. <!-- set(global_heading, 180); -->
  1818. calc(plugin[compass1_pointer].rotate, view.hlookat - global_heading);
  1819. </action>
  1820. </krpano>