13-09-2005, 15:19
|
|
|
חבר מתאריך: 03.09.05
הודעות: 2,857
|
|
כמה תיקונים
בקשר לקוד :
קוד:
onClipEvent (enterFrame) {
if (_xmouse<20) {
stopDrag();
}
if _xmouse>20) {
this._x=_xmouse;
startDrag(this);
}}
קודם כל תיקונים מבחינת הקוד הזה.
- xmouse_ יתן לו את ה xmouse של המוביקליפ ולא של הבמה הראשית, יש להוסיף root_.
- הפקודות שנתת יתבצעו המון פעמים, מה שגוזל משאבים וגורם לבאגים. בכל פעם שהתנאי יהיה נכון הפקודה תתבצע כמה פעמים.
- הקוד יעצור את האיקס של במוביקליפ על הקו, ולא את קצה המוביקליפ.
ואני אומר, למה בכלל צריך את כל הקוד הזה, אם יש לך כבר הכל מובנה בתוך הפקודה startDrag.
קוד:
startDrag(target:Object,[lock:Boolean,
left:Number, top:Number, right:Number, bottom:Number])
כפי שאתה יש עוד כמה פרמטרים לפקודה.
target, אתה בטח יודע, האינסטנס שאתה רוצה לגרור.
lock, קיצור של lock to center, ממקם את העכבר באמצע המוביקליפ.
left, top, right,bottom, קורדינטות שיגבילו את שטח הגרירה.
הנה מה שאתה צריך לצד הימני, אני בטוח שתצליח לחשוב לבד על הצד המשאלי
קוד:
onClipEvent (load)
{
startDrag(
this,true,
_root.stroke._x+_width/2,
400-_width/2,550-_width/2,
0+_width/2
);
}
סידרתי לך את זה קצת גם כמו ששמת לב
_____________________________________
נערך לאחרונה ע"י -FoxyBrain- בתאריך 13-09-2005 בשעה 15:24.
|