PDA

Просмотр полной версии : Передвижение по клику мыши


Trilan
09.07.2007, 16:48
Тяжело ли сделать, что бы по клику мыши на рабочем поле, объект передвигался туда?

Ведьмак
09.07.2007, 16:53
ТУДА - легко...

Trilan
09.07.2007, 16:58
Честно говоря, не сомневался, что кто-то додумается так ответить. Я наверное не так спросил. Я хотел узнать как это сделать?

BigDan
09.07.2007, 16:59
onPress = function(){
var move:Tween = new Tween(...);
}

Ведьмак
09.07.2007, 17:13
Можно сдеалть свой прототип:

MovieClip.prototype.moving = function(beginY, endY, steps) {
this.onEnterFrame = function() {
if (this._y>=end) {
delete (this.onEnterFrame);
}
this._y = this._y+steps;
};
};

это для движения по оси Y, сюда же можно вставить и Х...

а в конпке просто пишешь:

onPress = function(){
mc.moving(0,100,2);
}

где mc - мувик или путь к мувику...

D12
09.07.2007, 20:33
MovieClip.prototype.asRPG=function(){
this.onMouseDown=function(){
var x=_xmouse,y=_ymouse;
this.p=1;
this.onEnterFrame=function(){
with(this){
_x=(_x+x)/2;_y=(_y+y)/2;
if(p){
x=_parent._xmouse;y=_parent._ymouse;
}
}
}
}
this.onMouseUp=function(){this.p=0}
}
mc.asRPG();

Ведьмак
09.07.2007, 20:45
о! Я ПОНЯЛ! :)) "туда" - это куда кликнула мышка... :) а я думал по клику кнопки.. :)

D12
09.07.2007, 20:57
2Ведьмак молодец =)

Ведьмак
09.07.2007, 21:05
для поиска нестандартных решений порой отключаешь мозг... и иногда забываешь его потом включить :)

Trilan
09.07.2007, 23:14
D12: Вот, что оно мне пишет:
**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 1: Statement must appear within on/onClipEvent handler
MovieClip.prototype.asRPG=function(){

**Error** Scene=Scene 1, layer=Layer 1, frame=1:Line 16: Statement must appear within on/onClipEvent handler
mc.asRPG();

Total ActionScript Errors: 2 Reported Errors: 2

И кстати, кому-то какие-то имена надо задавать?

BigDan
10.07.2007, 00:22
1:http://flasher.ru/forum/attachment.php?attachmentid=15739&d=1163182597
2:http://flasher.ru/forum/attachment.php?attachmentid=15742&d=1163182831