Re: [求救]swf檔轉fla檔

看板Flash作者 (真誠的勇者)時間19年前 (2005/04/22 09:02), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
※ 引述《soso1 (笨笨)》之銘言: : 小弟線在有這一個swf檔案http://w3.nctu.edu.tw/~u9311085/clock124.swf : 想參考他的原始檔 : 來學script和一些動畫的製作方法 : 希望知道如何轉原始檔的大大幫忙<(_ _)> : 大感激 : 小弟很急>< : 麻煩各位大大了 : 再次感謝^^ 參考看看吧 一開啟抓系統時間 可拖曳分針調整時間 但是我沒做數字顯示 要的話再放進文字框就好了 或者再加上reset成系統時間的按鈕 場景上放時針(hourPointer)分針(minPointer)秒針(secPointer)的MC和時間刻度盤 所有code都寫在場景第一格,場景也只有一格 剛從一般時鐘做成可調整時間的鐘時 遭遇了一些問題 實際自己做做看的話會發現很有意思喔 有些code是用來整點校正用的 所以所有旋轉度數都先存在變數裡 而非慣例上直接抓取指針MC的_rotation //令時針的原點等於分針 hourPointer._x = minPointer._x; hourPointer._y = minPointer._y; //調整時間後與系統時間之間的差距 var baseHours = 0; var baseMinutes = 0; //時間與分針的旋轉度數 var minRotation; var hoursRotation; // myDate = new Date(); myHours = myDate.getHours(); if (myHours>12) { myHours = myHours-12; } myMinutes = myDate.getMinutes(); minRotation = myMinutes*6; if (minRotation>=360) { minRotation = minRotation-360; } minPointer._rotation = minRotation; //時針的旋轉度數要加上分針帶動的量 hoursRotation = myHours*30+int(myMinutes/2); hourPointer._rotation = hoursRotation; var mySec; //決定時針是否跟隨分針被拖曳時旋轉的變數 var follow = 0; // minPointer.onPress = function() { follow = 1; }; minPointer.onRelease = minPointer.onReleaseOutside=function () { follow = 0; }; // minPointer.onMouseMove = function() { if (follow == 1) { prevRotation = minRotation; minRotation = Math.atan2(_root._ymouse-minPointer._y, _root._xmouse-minPointer._x)*180/Math.PI+90; if (minRotation<0) { minRotation = int((360-Math.abs(minRotation))/6)*6; } else { minRotation = int(minRotation/6)*6; } if (minRotation>=360) { minRotation = minRotation-360; } minPointer._rotation = minRotation; if (minRotation*prevRotation>0) { rotateDrift = minRotation-prevRotation; if (rotateDrift<-180) { rotateDrift = 360-Math.abs(rotateDrift); } else if (rotateDrift>180) { rotateDrift = 0-(360-rotateDrift); } } if ((minRotation) == 0 or (minRotation == 360)) { myHours = Math.round(hoursRotation/30); if (myHours>12) { myHours = myHours-12; } hoursRotation = myHours*30+rotateDrift/12; } else { myHours = int(hoursRotation/30); hoursRotation = hoursRotation+rotateDrift/12; } hourPointer._rotation = hoursRotation; } }; //所有指針自動前進的涵式 function moveAllPointers() { if (follow == 0) { myDate = new Date(); mySec = myDate.getSeconds(); secPointer._rotation = mySec*6; minRotation = minRotation+0.1; tempNum = int(minRotation/6)*6; if (tempNum>=360) { tempNum = 0; } minPointer._rotation = tempNum; if ((tempNum) == 0 or (tempNum == 360)) { myHours = Math.round(hoursRotation/30); } else { myHours = int(hoursRotation/30); } if (myHours>12) { myHours = myHours-12; } hoursRotation = myHours*30+int(tempNum/12); hourPointer._rotation = hoursRotation; updateAfterEvent(); } } setInterval(moveAllPointers, 1000); -- 宮本武藏的必勝心法: 一、誠心為思想之本。二、忘我以求道。三、遍習諸藝。 四、廣涉百業之道。五、了解諸事的利弊得失。六、培養辨別事物的眼光。 七、洞悉肉眼不可見之事。八、留心細節小事。九、不做無功效之事。 ※ 編輯: Jedic 來自: 61.66.87.212 (04/22 09:51)
文章代碼(AID): #12Q4qHaD (Flash)
文章代碼(AID): #12Q4qHaD (Flash)