Advertisement
terorama

Flash / Tutorials 4

Apr 2nd, 2013
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -----------------------------------------------------
  2. -----------------------------------------------------
  3. -----------------------------------------------------
  4. -----------------------------------------------------
  5. Security.allowDomain("www.youtube.com");
  6.  
  7. var my_player:Object;
  8.  
  9. var my_loader:Loader = new Loader();
  10. my_loader.load(new URLRequest("http://www.youtube.com/apiplayer?version=3"));
  11. my_loader.contentLoaderInfo.addEventListener(Event.INIT, onLoaderInit);
  12.  
  13. function onLoaderInit(e:Event):void{
  14. addChild(my_loader);
  15. my_player = my_loader.content;
  16. my_player.addEventListener("onReady", onPlayerReady);
  17. }
  18.  
  19. function onPlayerReady(e:Event):void{
  20. my_player.setSize(640,360);
  21. my_player.cueVideoById("_OBlgSz8sSM",0);
  22. }
  23.  
  24. play_btn.addEventListener(MouseEvent.CLICK, playVid);
  25. function playVid(e:MouseEvent):void {
  26. my_player.playVideo();
  27. }
  28. pause_btn.addEventListener(MouseEvent.CLICK, pauseVid);
  29. function pauseVid(e:MouseEvent):void {
  30. my_player.pauseVideo();
  31. }
  32.  
  33. -----------------------------------------------------
  34. -----------------------------------------------------
  35. -----------------------------------------------------
  36. -----------------------------------------------------
  37.  
  38. import com.google.maps.LatLng;
  39. import com.google.maps.Map;
  40. import com.google.maps.MapEvent;
  41. import com.google.maps.MapType;
  42.  
  43. var my_map:Map = new Map();
  44. my_map.key = "ABQIAAAAE---user-your-API-key----iR6JhHg";
  45. addChild(my_map);
  46. my_map.setSize(new Point(500, 380));
  47.  
  48. my_map.addEventListener(MapEvent.MAP_READY, onMapReady);
  49. function onMapReady(event:Event):void
  50. {
  51. my_map.setCenter(new LatLng(23.618811, 58.586226), 15, MapType.NORMAL_MAP_TYPE);
  52. }
  53.  
  54. -----------------------------------------------------
  55. -----------------------------------------------------
  56. -----------------------------------------------------
  57. -----------------------------------------------------
  58.  
  59. <?php
  60. $to = "yourAddress@domain.com";
  61. $subject = ($_POST['senderName']);
  62. $message = ($_POST['senderMsg']);
  63. $message .= "\n\n---------------------------\n";
  64. $message .= "E-mail Sent From: " . $_POST['senderName'] . " <" . $_POST['senderEmail'] . ">\n";
  65. $headers = "From: " . $_POST['senderName'] . " <" . $_POST['senderEmail'] . ">\n";
  66. if(@mail($to, $subject, $message, $headers))
  67. {
  68. echo "answer=ok";
  69. }
  70. else
  71. {
  72. echo "answer=error";
  73. }
  74. ?>
  75.  
  76. submit_btn.addEventListener(MouseEvent.CLICK, sendMessage);
  77. function sendMessage(e:MouseEvent):void{
  78. var my_vars:URLVariables = new URLVariables();
  79. my_vars.senderName = name_txt.text;
  80. my_vars.senderEmail = email_txt.text;
  81. my_vars.senderMsg = message_txt.text;
  82.  
  83. var my_url:URLRequest = new URLRequest("mail.php");
  84. my_url.method = URLRequestMethod.POST;
  85. my_url.data = my_vars;
  86.  
  87. var my_loader:URLLoader = new URLLoader();
  88. my_loader.dataFormat = URLLoaderDataFormat.VARIABLES;
  89. my_loader.load(my_url);
  90.  
  91. name_txt.text = "";
  92. email_txt.text = "";
  93. message_txt.text = "Message Sent";
  94.  
  95. }
  96.  
  97. -----------------------------------------------------
  98. -----------------------------------------------------
  99. -----------------------------------------------------
  100. -----------------------------------------------------
  101.  
  102. var my_square:Shape = new Shape();
  103. my_square.graphics.beginFill(0x000000,1);
  104. my_square.graphics.drawRect(10,10,100,100);
  105. addChild(my_square);
  106.  
  107. var my_color:ColorTransform = new ColorTransform();
  108. my_color.alphaMultiplier = 0.5;
  109. my_color.blueOffset = 150;
  110. my_color.greenOffset = 100;
  111. my_color.redOffset = -50;
  112. my_square.transform.colorTransform = my_color;
  113.  
  114. -----------------------------------------------------
  115. -----------------------------------------------------
  116. -----------------------------------------------------
  117. -----------------------------------------------------
  118.  
  119. function moveBtn():void {
  120. my_btn.x += 10;
  121. }
  122.  
  123. var myInterval:uint = setInterval (moveBtn, 500);
  124.  
  125. my_btn.addEventListener(MouseEvent.CLICK, stopMe);
  126. function stopMe(e:MouseEvent):void{
  127. clearInterval(myInterval);
  128. }
  129.  
  130. -----------------------------------------------------
  131. -----------------------------------------------------
  132. -----------------------------------------------------
  133. -----------------------------------------------------
  134.  
  135. var css_loader:URLLoader = new URLLoader();
  136. var txt_loader:URLLoader = new URLLoader();
  137. var my_css:StyleSheet = new StyleSheet();
  138. var my_txt:TextField = new TextField();
  139.  
  140. css_loader.load(new URLRequest("myStyle.css"));
  141. css_loader.addEventListener(Event.COMPLETE, onCSSComplete);
  142.  
  143. function onCSSComplete(e:Event):void {
  144. my_css.parseCSS(e.target.data);
  145. txt_loader.load(new URLRequest("myText.txt"));
  146.  
  147. }
  148.  
  149. txt_loader.addEventListener(Event.COMPLETE, onTxtComplete);
  150.  
  151. function onTxtComplete(e:Event):void {
  152. my_txt.styleSheet=my_css;
  153. my_txt.htmlText=e.target.data;
  154. addChild(my_txt);
  155.  
  156. my_txt.width=300;
  157. my_txt.autoSize=TextFieldAutoSize.LEFT;
  158. my_txt.wordWrap=true;
  159.  
  160. }
  161.  
  162. -----------------------------------------------------
  163. -----------------------------------------------------
  164. -----------------------------------------------------
  165. -----------------------------------------------------
  166.  
  167. var my_shape:Shape = new Shape();
  168. addChild(my_shape);
  169.  
  170. my_shape.graphics.lineStyle(1, 0xFF0000, 1);
  171. my_shape.graphics.moveTo(50, 50);
  172. my_shape.graphics.lineTo(100, 50);
  173. my_shape.graphics.lineTo(100, 100);
  174. my_shape.graphics.lineTo(50, 100);
  175. my_shape.graphics.lineTo(50, 50);
  176.  
  177. var my_shape:Shape = new Shape();
  178. addChild(my_shape);
  179.  
  180. my_shape.graphics.lineStyle(1, 0xFF0000, 1);
  181. my_shape.graphics.moveTo(0, 50);
  182. my_shape.graphics.curveTo(25, 0, 50, 50);
  183. my_shape.graphics.curveTo(25, 100, 0, 50);
  184.  
  185.  
  186. var my_shape:Shape = new Shape();
  187. addChild(my_shape);
  188.  
  189. my_shape.graphics.lineStyle(1, 0xFF0000, 1);
  190. my_shape.graphics.beginFill(0x000000,1);
  191. my_shape.graphics.moveTo(50, 50);
  192. my_shape.graphics.lineTo(100, 50);
  193. my_shape.graphics.lineTo(100, 100);
  194. my_shape.graphics.lineTo(50, 100);
  195. my_shape.graphics.lineTo(50, 50);
  196. my_shape.graphics.endFill();
  197.  
  198. my_shape.graphics.clear();
  199.  
  200. var my_shape:Shape = new Shape();
  201. addChild(my_shape);
  202.  
  203. my_shape.graphics.lineStyle(1, 0xFF0000, 1);
  204. my_shape.graphics.beginFill(0x000000,1);
  205. my_shape.graphics.drawRect(50, 50, 300, 100);
  206. my_shape.graphics.endFill();
  207.  
  208. var my_shape:Shape = new Shape();
  209. addChild(my_shape);
  210.  
  211. my_shape.graphics.lineStyle(1, 0xFF0000, 1);
  212. my_shape.graphics.beginFill(0x000000,1);
  213. my_shape.graphics.drawCircle(150, 150, 25);
  214. my_shape.graphics.endFill();
  215.  
  216. var my_shape:Shape = new Shape();
  217. addChild(my_shape);
  218.  
  219. my_shape.graphics.lineStyle(1, 0xFF0000, 1);
  220. my_shape.graphics.beginFill(0x000000,1);
  221. my_shape.graphics.drawRoundRect(50, 50, 300, 100, 25);
  222. my_shape.graphics.endFill();
  223.  
  224. -----------------------------------------------------
  225. -----------------------------------------------------
  226. -----------------------------------------------------
  227. -----------------------------------------------------
  228.  
  229. my_btn.addEventListener(MouseEvent.CLICK, onClick);
  230. function onClick(e:MouseEvent):void{
  231. navigateToURL(new URLRequest("http://www.republicofcode.com/"), "_blank");
  232. }
  233.  
  234. -----------------------------------------------------
  235. -----------------------------------------------------
  236. -----------------------------------------------------
  237. -----------------------------------------------------
  238.  
  239. stage.addEventListener(KeyboardEvent.KEY_DOWN, myKeyDown);
  240. function myKeyDown(e:KeyboardEvent):void {
  241. switch (e.keyCode) {
  242. case Keyboard.LEFT :
  243. my_mc.x-=5;
  244. break;
  245.  
  246. case Keyboard.RIGHT :
  247. my_mc.x+=5;
  248. break;
  249.  
  250. case Keyboard.UP :
  251. my_mc.y-=5;
  252. break;
  253.  
  254. case Keyboard.DOWN :
  255. my_mc.y+=5;
  256. break;
  257. }
  258. }
  259.  
  260. -----------------------------------------------------
  261. -----------------------------------------------------
  262. -----------------------------------------------------
  263. -----------------------------------------------------
  264.  
  265. <statuses>
  266.  
  267. <status>
  268. <created_at>...</create_at>
  269. <text>...</text>
  270. <other elements...>...</other>
  271. </status>
  272.  
  273. <status>
  274. <created_at>...</create_at>
  275. <text>...</text>
  276. <other elements...>...</other>
  277. </status>
  278.  
  279. <status>
  280. <created_at>...</create_at>
  281. <text>...</text>
  282. <other elements...>...</other>
  283. </status>
  284.  
  285. </statuses>
  286.  
  287.  
  288. var myXMLLoader:URLLoader = new URLLoader();
  289. myXMLLoader.load(new URLRequest("http://twitter.com/statuses/user_timeline.xml?screen_name=blue_chi"));
  290. myXMLLoader.addEventListener(Event.COMPLETE, processXML);
  291.  
  292. function processXML(e:Event):void{
  293. var myXML:XML = new XML(e.target.data);
  294.  
  295. tweet_1.text = myXML.status[0].text;
  296. tweet_2.text = myXML.status[1].text;
  297. tweet_3.text = myXML.status[2].text;
  298. tweet_4.text = myXML.status[3].text;
  299. }
  300.  
  301. follow_btn.addEventListener(MouseEvent.CLICK, onFollow);
  302. function onFollow(e:MouseEvent):void{
  303. navigateToURL(new URLRequest("http:///twitter.com/blue_chi"));
  304. }
  305. follow_btn.buttonMode = true;
  306.  
  307. -----------------------------------------------------
  308. -----------------------------------------------------
  309. -----------------------------------------------------
  310. -----------------------------------------------------
  311.  
  312. addEventListener(Event.ENTER_FRAME, timeUpdate);
  313. function timeUpdate(e:Event):void{
  314.  
  315. var my_date:Date = new Date();
  316. hours_mc.rotation=Number(my_date.hours)*30;
  317. minutes_mc.rotation=Number(my_date.minutes)*6;
  318. seconds_mc.rotation=Number(my_date.seconds)*6;
  319.  
  320. }
  321.  
  322. close_btn.buttonMode = true;
  323. close_btn.addEventListener(MouseEvent.CLICK, onClose);
  324. function onClose(e:MouseEvent):void{
  325.  
  326. NativeApplication.nativeApplication.exit();
  327.  
  328. }
  329.  
  330. body_mc.addEventListener(MouseEvent.MOUSE_DOWN, onDragStart);
  331. function onDragStart(e:MouseEvent):void{
  332.  
  333. stage.nativeWindow.startMove();
  334. alpha=0.5;
  335.  
  336. }
  337.  
  338. body_mc.addEventListener(MouseEvent.MOUSE_UP, onDragStop);
  339. function onDragStop(e:MouseEvent):void{
  340.  
  341. alpha=1;
  342.  
  343. }
  344.  
  345. -----------------------------------------------------
  346. -----------------------------------------------------
  347. -----------------------------------------------------
  348. -----------------------------------------------------
  349.  
  350. var my_date:Date;
  351.  
  352. var my_timer:Timer=new Timer(1000);
  353. my_timer.addEventListener(TimerEvent.TIMER, onTimer);
  354. my_timer.start();
  355.  
  356. function onTimer(e:TimerEvent):void {
  357. my_date = new Date();
  358. trace(my_date.hours + ":" + my_date.minutes + ":" + my_date.seconds);
  359. }
  360.  
  361. -----------------------------------------------------
  362. -----------------------------------------------------
  363. -----------------------------------------------------
  364. -----------------------------------------------------
  365.  
  366. <?xml version="1.0" encoding="utf-8"?>
  367. <SLIDESHOW SPEED="2">
  368. <IMAGE URL="images/image1.jpg" TITLE="Snow in Wessex Lane" />
  369. <IMAGE URL="images/image2.jpg" TITLE="Riverside Park" />
  370. <IMAGE URL="images/image3.jpg" TITLE="London Museum" />
  371. <IMAGE URL="images/image4.jpg" TITLE="Castle in Wales" />
  372. </SLIDESHOW>
  373.  
  374.  
  375.  
  376.  
  377. //-------------------------------
  378.  
  379. import fl.transitions.Tween;
  380. import fl.transitions.easing.*;
  381. import fl.transitions.TweenEvent;
  382.  
  383. var my_speed:Number;
  384. var my_total:Number;
  385. var my_images:XMLList;
  386.  
  387. var my_loaders_array:Array = [];
  388. var my_labels_array:Array = [];
  389. var my_success_counter:Number = 0;
  390. var my_playback_counter:Number = 0;
  391.  
  392. var my_slideshow:Sprite = new Sprite();
  393. var my_image_slides:Sprite = new Sprite();
  394. var my_label_slides:Sprite = new Sprite();
  395. var my_preloader:TextField;
  396.  
  397. var my_timer:Timer;
  398. var my_prev_tween:Tween;
  399. var my_tweens_array:Array = [];
  400.  
  401. var my_xml_loader:URLLoader = new URLLoader();
  402. my_xml_loader.load(new URLRequest("slideshow.xml"));
  403. my_xml_loader.addEventListener(Event.COMPLETE, processXML);
  404.  
  405.  
  406. //-------------------------------
  407. function processXML (e:Event):void{
  408.  
  409. var my_xml:XML = new XML(e.target.data);
  410. my_speed=my_xml.@SPEED;
  411. my_images=my_xml.IMAGE;
  412. my_total=my_images.length();
  413.  
  414. loadImages();
  415.  
  416. my_xml_loader.removeEventListener(Event.COMPLETE, processXML);
  417. my_xml_loader = null;
  418.  
  419. }
  420. //-------------------------------
  421.  
  422. function loadImages():void{
  423. for (var i:Number = 0; i < my_total; i++){
  424.  
  425. var my_url:String = my_images[i].@URL;
  426. var my_loader:Loader = new Loader();
  427. my_loader.load(new URLRequest(my_url));
  428. my_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
  429. my_loaders_array.push(my_loader);
  430.  
  431. var my_label:TextField = new TextField();
  432. my_label.text = my_images[i].@TITLE;
  433. my_label.autoSize = TextFieldAutoSize.LEFT;
  434. my_labels_array.push(my_label);
  435.  
  436. }
  437.  
  438. my_preloader = new TextField();
  439. my_preloader.text="Loading";
  440. my_preloader.autoSize = TextFieldAutoSize.CENTER;
  441. my_preloader.x = (stage.stageWidth - my_preloader.width)/2;
  442. my_preloader.y = (stage.stageHeight - my_preloader.height)/2;
  443. addChild(my_preloader);
  444.  
  445. }
  446.  
  447. //-------------------------------
  448. function onComplete(e:Event):void{
  449.  
  450. my_success_counter++;
  451. if (my_success_counter == my_total){
  452. startShow();
  453. }
  454.  
  455. var my_loaderInfo:LoaderInfo = LoaderInfo(e.target);
  456. my_loaderInfo.removeEventListener(Event.COMPLETE, onComplete);
  457.  
  458. }
  459.  
  460. //-------------------------------
  461. function startShow():void{
  462.  
  463. removeChild(my_preloader);
  464. my_preloader = null;
  465.  
  466. addChild(my_slideshow);
  467. my_slideshow.addChild(my_image_slides);
  468. my_slideshow.addChild(my_label_slides);
  469.  
  470. nextImage();
  471.  
  472. my_timer = new Timer(my_speed*1000);
  473. my_timer.addEventListener(TimerEvent.TIMER, timerListener);
  474. my_timer.start();
  475.  
  476. }
  477.  
  478. //-------------------------------
  479. function timerListener (e:TimerEvent):void{
  480.  
  481. hidePrev();
  482.  
  483. my_playback_counter++;
  484. if (my_playback_counter == my_total){
  485. my_playback_counter =0;
  486. }
  487.  
  488. nextImage();
  489.  
  490. }
  491. //-------------------------------
  492. function nextImage():void{
  493.  
  494. var my_image:Loader = Loader(my_loaders_array[my_playback_counter]);
  495. my_image_slides.addChild(my_image);
  496. my_image.x = (stage.stageWidth - my_image.width)/2;
  497. my_image.y = (stage.stageHeight - my_image.height)/2;
  498.  
  499. my_tweens_array[0] = new Tween(my_image,"alpha",Strong.easeOut,0,1,1,true);
  500.  
  501. var my_label:TextField = TextField(my_labels_array[my_playback_counter]);
  502. my_labels_slides.addChild(my_label);
  503. my_label.x = my_image.x;
  504. my_label.y = my_image.y + my_image.height;
  505.  
  506. my_tweens_array[1] = new Tween(my_label,"alpha",Strong.easeOut,0,1,1,true);
  507.  
  508. }
  509.  
  510.  
  511. //-------------------------------
  512. function hidePrev():void{
  513.  
  514. var my_image:Loader=Loader(my_image_slides.getChildAt(0));
  515. my_prev_tween = new Tween(my_image,"alpha",Strong.easeOut,1,0,1,true);
  516. my_prev_tween.addEventListener(TweenEvent.MOTION_FINISH, onFadeOut)
  517.  
  518. var my_label:TextField=TextField(my_label_slides.getChildAt(0));
  519. my_tweens_array[2] = new Tween(my_label,"alpha",Strong.easeOut,1,0,1,true);
  520.  
  521. }
  522. //-------------------------------
  523.  
  524. function onFadeOut(e:TweenEvent):void{
  525. my_image_slides.removeChildAt(0);
  526. my_label_slides.removeChildAt(0);
  527. }
  528.  
  529. -----------------------------------------------------
  530. -----------------------------------------------------
  531. -----------------------------------------------------
  532. -----------------------------------------------------
  533. mport fl.transitions.Tween;
  534. import fl.transitions.easing.*;
  535.  
  536. my_mc.mask = mask_mc;
  537. var my_tween:Tween = new Tween(mask_mc,"x",Strong.easeOut,0,400,3, true);
  538.  
  539.  
  540. my_mc.mask = mask_mc;
  541.  
  542. my_mc.buttonMode=true;
  543. my_mc.addEventListener(MouseEvent.MOUSE_DOWN, onDown);
  544. my_mc.addEventListener(MouseEvent.MOUSE_UP, onUp);
  545.  
  546. function onDown(e:MouseEvent):void{
  547. mask_mc.startDrag();
  548. }
  549.  
  550. function onUp(e:MouseEvent):void{
  551. mask_mc.stopDrag();
  552. }
  553.  
  554. -----------------------------------------------------
  555. -----------------------------------------------------
  556. -----------------------------------------------------
  557. -----------------------------------------------------
  558. var myArray:Array = new Array("Flash", "ActionScript", "Republic of Code");
  559. var myArray:Array = ["Flash", "ActionScript", "Republic of Code"];
  560.  
  561. myArray[6] = "Tutorial";
  562. myArray.push("Tutorials");
  563. myArray.splice(2,1);
  564. myArray.splice(1);
  565. myArray.pop();
  566. trace(myArray.length);
  567. myArray.reverse();
  568.  
  569. -----------------------------------------------------
  570. -----------------------------------------------------
  571. -----------------------------------------------------
  572. -----------------------------------------------------
  573. var mySharedObject:SharedObject = SharedObject.getLocal("republicofcode");
  574. mySharedObject.data.firstName = "John";
  575. mySharedObject.data.lastName = "Doe";
  576. mySharedObject.flush();
  577.  
  578. trace(mySharedObject.data.firstName);
  579. trace(mySharedObject.data.lastName);
  580.  
  581. mySharedObject.clear();
  582.  
  583. //-----------------------------
  584. var mySO:SharedObject = SharedObject.getLocal("republicofcode");
  585. logo_mc.x = mySO.data.my_x;
  586. logo_mc.y = mySO.data.my_y;
  587. if (!mySO.data.my_y) {
  588. logo_mc.x = 150;
  589. logo_mc.y = 100;
  590. }
  591. logo_mc.addEventListener (MouseEvent.MOUSE_DOWN, onDown);
  592. function onDown (e:MouseEvent):void {
  593. var my_mc = e.target;
  594. my_mc.startDrag ();
  595. }
  596. logo_mc.addEventListener (MouseEvent.MOUSE_UP, onUP);
  597. function onUP (e:MouseEvent):void {
  598. logo_mc.stopDrag ();
  599.  
  600. mySO.data.my_x = logo_mc.x;
  601. mySO.data.my_y = logo_mc.y;
  602. mySO.flush ();
  603.  
  604. }
  605. logo_mc.buttonMode=true;
  606.  
  607. -----------------------------------------------------
  608. -----------------------------------------------------
  609. -----------------------------------------------------
  610. -----------------------------------------------------
  611.  
  612. import flash.filters.*;
  613.  
  614. var myBlur:BlurFilter = new BlurFilter();
  615. var myGlow:GlowFilter = new GlowFilter();
  616. my_mc.filters = [myBlur, myGlow];
  617.  
  618. my.filters = [];
  619. //----------------------------
  620. import flash.filters.*;
  621.  
  622. var myGlow:GlowFilter = new GlowFilter();
  623. myGlow.alpha=0.5;
  624. my_mc.filters = [myGlow];
  625.  
  626. //----------------------------
  627. import flash.filters.*;
  628.  
  629. var myBlur:BlurFilter = new BlurFilter();
  630. myBlur.quality = 3;
  631. myBlur.blurX = 10;
  632. myBlur.blurY = 10;
  633. my_mc.filters = [myBlur];
  634. //----------------------------
  635. import flash.filters.*;
  636.  
  637. var myGlow:GlowFilter = new GlowFilter();
  638. myGlow.inner=true;
  639. myGlow.color = 0x000000;
  640. myGlow.blurX = 20;
  641. myGlow.blurY = 20;
  642. my_mc.filters = [myGlow];
  643.  
  644. //----------------------------
  645. import flash.filters.*;
  646.  
  647. var myBevel:BevelFilter = new BevelFilter();
  648. myBevel.type = BitmapFilterType.FULL;
  649. myBevel.distance = 10;
  650. myBevel.highlightColor = 0xFF0000;
  651. myBevel.shadowColor = 0xFFFF00;
  652. myBevel.blurX = 20;
  653. myBevel.blurY = 20;
  654. my_mc.filters = [myBevel];
  655.  
  656. //----------------------------
  657. import flash.filters.*;
  658.  
  659. var myShadow:DropShadowFilter = new DropShadowFilter();
  660. myShadow.distance = 10;
  661. myShadow.color = 0xFF0000;
  662. myShadow.blurX = 10;
  663. myShadow.blurY = 10;
  664. myShadow.quality = 3;
  665. my_mc.filters = [myShadow];
  666.  
  667. -----------------------------------------------------
  668. -----------------------------------------------------
  669. -----------------------------------------------------
  670. -----------------------------------------------------
  671.  
  672. <?xml version="1.0" encoding="utf-8"?>
  673. <PLAYLIST THUMBS_X="10" THUMBS_Y="10" THUMB_WIDTH="125" THUMB_HEIGHT="70" VIDEO_X="300" VIDEO_Y="10" >
  674. <VIDEO TITLE="Whistle Stop Train Tour" THUMB="thumbs/thumb1.jpg" URL="video/video1.flv"/>
  675. <VIDEO TITLE="Obama Weekly Address" THUMB="thumbs/thumb2.jpg" URL="video/video2.flv"/>
  676. <VIDEO TITLE="Lincoln Memorial Concert" THUMB="thumbs/thumb3.jpg" URL="video/video3.flv"/>
  677. </PLAYLIST>
  678.  
  679.  
  680. //---------------------------
  681. import fl.video.*;
  682.  
  683. var thumb_width:Number;
  684. var thumb_height:Number;
  685. var thumbs_x:Number;
  686. var thumbs_y:Number;
  687. var video_x:Number;
  688. var video_y:Number;
  689. var my_videos:XMLList;
  690. var my_total:Number;
  691.  
  692. var main_container:Sprite;
  693. var thumbs:Sprite;
  694. var titles:Sprite;
  695. var my_player:FLVPlayback;
  696.  
  697. //---------------------------
  698. var myXMLLoader:URLLoader = new URLLoader();
  699. myXMLLoader.load(new URLRequest("playlist.xml"));
  700. myXMLLoader.addEventListener(Event.COMPLETE, processXML);
  701.  
  702. //---------------------------
  703. function processXML (e:Event):void {
  704. var myXML:XML = new XML(e.target.data);
  705.  
  706. thumb_width = myXML.@THUMB_WIDTH;
  707. thumb_height = myXML.@THUMB_HEIGHT;
  708. thumbs_x = myXML.@THUMBS_X;
  709. thumbs_y = myXML.@THUMBS_Y;
  710. video_x = myXML.@VIDEO_X;
  711. video_y = myXML.@VIDEO_Y;
  712. my_videos = myXML.VIDEO;
  713. my_total = my_videos.length();
  714.  
  715. makeContainers ();
  716. callThumbs ();
  717. makePlayer();
  718.  
  719. }
  720.  
  721.  
  722. //---------------------------
  723. function makeContainers ():void {
  724. main_container = new Sprite();
  725. addChild (main_container);
  726.  
  727. thumbs = new Sprite();
  728. thumbs.addEventListener(MouseEvent.CLICK, playVideo);
  729. thumbs.addEventListener(MouseEvent.MOUSE_OVER, onOver);
  730. thumbs.addEventListener(MouseEvent.MOUSE_OUT, onOut);
  731. thumbs.x = thumbs_x;
  732. thumbs.y = thumbs_y;
  733. thumbs.buttonMode = true;
  734. main_container.addChild (thumbs);
  735.  
  736. titles = new Sprite();
  737. titles.x = thumbs_x;
  738. titles.y = thumbs_y;
  739. main_container.addChild (titles);
  740. }
  741.  
  742. //---------------------------
  743. function callThumbs():void{
  744. for (var i:Number = 0; i < my_total; i++){
  745.  
  746. var thumb_url = my_videos[i].@THUMB;
  747. var thumb_loader = new Loader();
  748. thumb_loader.name = i;
  749. thumb_loader.load(new URLRequest(thumb_url));
  750. thumb_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, thumbLoaded);
  751. thumb_loader.y = (thumb_height+10)*i;
  752.  
  753. var thumb_title = my_videos[i].@TITLE;
  754. var title_txt:TextField = new TextField();
  755. title_txt.text = thumb_title;
  756. title_txt.y = thumb_loader.y;
  757. title_txt.x = thumb_width + 10;
  758. title_txt.width = thumb_width;
  759. title_txt.height = thumb_height;
  760. title_txt.wordWrap = true;
  761. titles.addChild(title_txt);
  762.  
  763. }
  764. }
  765.  
  766. //---------------------------
  767. function thumbLoaded(e:Event):void{
  768. var my_thumb:Loader = Loader(e.target.loader);
  769. thumbs.addChild(my_thumb);
  770. }
  771.  
  772. //---------------------------
  773. function makePlayer():void{
  774. my_player = new FLVPlayback();
  775. my_player.skin = "SkinOverPlaySeekMute.swf";
  776. my_player.skinBackgroundColor = 0xAEBEFB;
  777. my_player.skinBackgroundAlpha = 0.5;
  778.  
  779. my_player.x = video_x;
  780. my_player.y = video_y;
  781. my_player.width = 480;
  782. my_player.height = 270;
  783.  
  784. main_container.addChild(my_player);
  785. my_player.source = my_videos[0].@URL;
  786. }
  787.  
  788. //---------------------------
  789. function playVideo(e:MouseEvent):void{
  790. var video_url = my_videos[e.target.name].@URL;
  791. my_player.source = video_url;
  792. }
  793.  
  794. //---------------------------
  795. function onOver (e:MouseEvent):void{
  796. var my_thumb:Loader = Loader(e.target);
  797. my_thumb.alpha = 0.5;
  798. }
  799.  
  800. //---------------------------
  801. function onOut (e:MouseEvent):void{
  802. var my_thumb:Loader = Loader (e.target);
  803. my_thumb.alpha = 1;
  804. }
  805.  
  806. -----------------------------------------------------
  807. -----------------------------------------------------
  808. -----------------------------------------------------
  809. -----------------------------------------------------
  810. var my_menu:ContextMenu = new ContextMenu();
  811. my_menu.hideBuiltInItems();
  812. contextMenu = my_menu;
  813.  
  814. //------------------------
  815. var my_menu:ContextMenu = new ContextMenu();
  816. my_menu.builtInItems.forwardAndBack = false;
  817. my_menu.builtInItems.loop = false;
  818. my_menu.builtInItems.play = false;
  819. my_menu.builtInItems.print = false;
  820. my_menu.builtInItems.quality = false;
  821. my_menu.builtInItems.rewind = false;
  822. my_menu.builtInItems.save = false;
  823. my_menu.builtInItems.zoom = false;
  824. contextMenu = my_menu;
  825.  
  826. //------------------------
  827. var my_menu:ContextMenu = new ContextMenu();
  828. my_menu.hideBuiltInItems();
  829.  
  830. var my_notice = new ContextMenuItem("Republic of Code");
  831. my_menu.customItems.push(my_notice);
  832.  
  833. contextMenu = my_menu;
  834. //------------------------
  835.  
  836. var my_menu:ContextMenu = new ContextMenu();
  837. my_menu.hideBuiltInItems();
  838.  
  839. var my_notice = new ContextMenuItem("Republic of Code");
  840. var my_email = new ContextMenuItem("blue_chi@roc.com");
  841. var my_copyright = new ContextMenuItem("Copyright - 2009");
  842. my_menu.customItems.push(my_notice, my_email, my_copyright);
  843.  
  844. contextMenu = my_menu;
  845. //------------------------
  846.  
  847. var my_menu:ContextMenu = new ContextMenu();
  848. my_menu.hideBuiltInItems();
  849.  
  850. var my_notice = new ContextMenuItem("Republic of Code");
  851. var my_email = new ContextMenuItem("blue_chi@roc.com");
  852. var my_copyright = new ContextMenuItem("Copyright - 2009");
  853.  
  854. my_copyright.enabled = false;
  855. my_copyright.separatorBefore = true;
  856.  
  857. my_menu.customItems.push(my_notice, my_email, my_copyright);
  858.  
  859. contextMenu = my_menu;
  860. //------------------------
  861.  
  862. var my_menu:ContextMenu = new ContextMenu();
  863. my_menu.hideBuiltInItems();
  864.  
  865. var my_notice = new ContextMenuItem("Republic of Code");
  866. var my_email = new ContextMenuItem("blue_chi@roc.com");
  867. var my_copyright = new ContextMenuItem("Copyright - 2009");
  868.  
  869. my_copyright.enabled = false;
  870. my_copyright.separatorBefore = true;
  871.  
  872. function openLink(e:ContextMenuEvent):void{
  873. navigateToURL(new URLRequest("http://www.republicofcode.com"));
  874. }
  875. my_notice.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, openLink);
  876.  
  877. my_menu.customItems.push(my_notice, my_email, my_copyright);
  878.  
  879. contextMenu = my_menu;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement