2012年8月15日 星期三

[AS3.0學習筆記]連連看小測驗

公司無聊的電子書專案,剛好要寫到一個小朋友「連連看」的小測驗,不過話說也好久沒有這樣自己動動腦了,所以紀錄一下吧!

這個範例邏輯是「當點擊選項點拖曳到答案點後,會產生一條線做為連結 ; 並且移除該答案點的偵聽(避免重複連線); 但是當使用者發現連線錯誤想要重連時(例如 A-A 要換成 A-B),那麼必須清除舊有的連線 ; 最後加入「計算分數」以及「重玩」功能。

效果預覽:

程式學習:

繪製線條
可參閱「簡易繪圖版」一文。
利用「getChildByName」取得對應名稱的物件
當使用者要重新連線時,可以先判斷是否存在舊有的連線,如果有,可以利用「getChildByName」取得舊連線名稱後,將其移除。 例如: var myClip:MC; //產生20個小圓球,並且命名為「A1」~「A20」 for (var a:int=1; a<=18; a++) { myClip=new MC(); addChild(myClip); myClip.name="A"+a; //排好位置 if (a<10) { myClip.x=39+(a-1)*59; myClip.y=128; } else { myClip.x=39+(a-10)*59; myClip.y=230; } myClip.addEventListener(MouseEvent.CLICK,DoTrace); } function DoTrace(e:MouseEvent) { TT.text=e.target.name.toString() } getChildByName("A3").x=150; getChildByName("A3").y=80; getChildByName("A5").x=170; getChildByName("A5").y=330;

原始檔下載:

8 則留言:

  1. 鼻涕大,我用cs4開啟檔案會出現檔案格式錯誤耶!
    有什麼解決方式嗎??

    回覆刪除
    回覆
    1. 哈哈~~因為我檔案是CS5.5還是6忘記了~~所以格式不支援~~@@~~
      因為我現在手邊只有CS6~降轉最多只能降到CS5~建議大大可以找GOOGLE抓一下CS6穫5.5的版本唷~~^^

      刪除
    2. 好的! 謝謝鼻涕大的回覆.

      刪除
  2. 請問您製作的小遊戲 可以分享給大家利用在非營利用途上嗎

    回覆刪除
  3. 請問如果全部答對+100
    而不是答對一個+20
    要怎麼修改?

    回覆刪除
  4. 直接在判斷結束的地方加就可以了

    回覆刪除