เบิ้ลเลยละกัน
อันนี้โค้ดของตัว
drawing pad1หลักคร่าวๆ ที่ผมทำก็คือเกี่ยวกับการเคลื่อนไหวของเม้าท์
ยิ่งจังหวะนั้น เคลื่อนไหวเร็ว ตัว clip นั้น ก็จะเคลื่อนที่เร็วขึ้นด้วย
ก็เลยต้องมีตัวแปรที่ชื่อว่า oldX , oldY , newX , newY
เพื่อเก็บค่าของตัวแปรเหล่านั้่นว่า แต่ก่อนกับ ปัจจุบัน เม้าท์ของเราอยู่ระยะห่างกันเท่าไร
(เพื่อใช้ในการคำนวณความเร็วของการเคลื่อนที่ของเม้าท์)
ซึ่งเวลาที่จะเกิดพวกนี้ จะขึ้นตาม frame rate ของที่เราสร้างไว้
(หมายถึงในโค้ดที่ผมเขียนนะ)
เพื่อให้แต่ละตัวมีการเคลื่อนไหวของตัวมันเอง
ผมก็เลยสร้าง movie clip ให้มัน แล้วก็เซตค่าพวก speed เก็บไว้ที่ตัวมันเอง
(จะเห็นว่ามีตัวแปรที่ชื่อ obj อยู่ ตัวแปรนี้จะเพิ่มค่าไปเรื่อยๆ
เพื่อไม่ให้ชื่อตัวแปร หรือ movieClip มันซ้ำกัน)
คำสั่งวาดรูปงานนี้ จะเห็นว่า ผมเขียนเส้นใส่ตัว movieClip ที่ผมสร้างมาใหม่เลย
ดังนั้นเวลาย้ายตัว movie เส้นก็จะย้ายไปด้วย
---------------------------------------------------------------------------------
เพิ่มเติม เมื่อกี้ลืมอธิบาย

ตัว mc.counter จะ เป็นตัวนับเรื่อยๆว่า ตัวนี้วิ่งครบ 100 frame หรือยัง ถ้าครบแล้วจะลบตัวเองออก
เพราะถ้ามี movie clip มากๆแล้วนั้น มันจะกระตุก
obj = 0;
_root.onMouseDown = function(){
counter = 3;
isDrawing = true;
newx = _root._xmouse;
newy = _root._ymouse;
}
_root.onMouseMove = function(){
if(isDrawing == true){
oldx = newx;
newx = _root._xmouse;
oldy = newy;
newy = _root._ymouse;
obj++;
counter += 0.1;
if(counter > 10){
counter = 0
}
_root.createEmptyMovieClip("line"+obj,obj);
size = Math.abs(counter-5);
var myMc:MovieClip = eval("line"+obj);
eval("line"+obj).lineStyle(size,0xaaff00,100);
eval("line"+obj).moveTo(oldx,oldy)
eval("line"+obj).lineTo(newx,newy);
eval("line"+obj).endFill();
eval("line"+obj).speedx = newx - oldx;
eval("line"+obj).speedy = newy - oldy;
eval("line"+obj).counter = 0;
eval("line"+obj).onEnterFrame = function(){
this.counter++;
this._x += this.speedx;
this._y += this.speedy;
if(this.counter > 100){
delete this.onEnterFrame;
removeMovieClip(this);
}
}
myMc.useHandCursor;
updateAfterEvent();
}
}
_root.onMouseUp = function(){
isDrawing = false;
}
ปล. drawing pad2 จะเป็นการกลับค่าของ speedX กับ speedY เท่านั้นเองแล
