Miscare imagine cu redirect la un anumit punct

Intrebari, subiecte si tutoriale Adobe Flash si ActionScript 3.
Komfort
Mesaje: 157

Miscare imagine cu redirect la un anumit punct

buna ziua..

as dori sa stiu cum as putea realiza urmatoarea....mi-ar fi de folos un mic exemplu...
deci am o img de ex un dreptunghi...si putand sa-l controlez cu sagetile-->asta stiu sa fac
apoi->>cand ajung intrun anumit pct sa ma rederectioneze pe o anumita pagina..cred ca implica cordonatele nush sigur

multumesc:(

MarPlo Mesaje: 4343
Salut
Nu am un cod care sa faca ce spui, dar cred ca trebuie preluate coordonatele imaginii /dreptunghiului dupa fiecare miscare, iar cand ajunge la o anumita coordonata, de exemplu a unui tag cu ID a carui coordonata o preiei la inceput, sa le compari, iar daca se potrivesc, sa faca redirect.
Incearca sa faci codul, si spui unde nu te descrci.

Komfort Mesaje: 157

Cod: Selectaţi tot

stage.addEventListener(KeyboardEvent.KEY_DOWN, moveF);

function moveF(key_evt:KeyboardEvent):void
{
  var vi:int = key_evt.shiftKey ? 12 : 2;

  switch (key_evt.keyCode)
  {
  case 37:
    dreptunghi.x -= vi;
    break;
  case 39:
    dreptunghi.x += vi;
    break;
  case 38:
    dreptunghi.y -= vi;
    break;
  case 40:
    dreptunghi.y += vi;
    break;
  default:
    break;
  }
}
de e am acest cod...care face ca o imagine sa se miste cu ajutorul sagetilor............dar nu am nicio idee cum sa preiau coordonatele imaginii pe un anumit spatiu delimitat.....sunt incepator in actionScript:( un mic ajutor

Nu ma poate ajuta nimeni?
multumesc

MarPlo Mesaje: 4343
Daca mai intai ai cauta ce nu stii, ai afla.
De exemplu, cautare pe net: "AS3 coordinates".
Coordonatele se preiau cu instanta.x si instanta.y
Vezi cum te descurci cu urmatorul cod, daca-l intelegi. In scena trebuie sa ai un cerculet mic, Symbol cu nume de instanta "cerc".
Punctul de origine 0/0 al Symbolurilor e indicat sa fie pe centru.
In acest cod, cand "dreptunghi" se apropie de "cerc", atat pe axa X cat si Y, la numarul de pixeli setat la "dist", va deschide adresa de la "urlpg" si opreste miscarea.

Cod: Selectaţi tot

// preia coordonatele cercului
var cerc_x = cerc.x;
var cerc_y = cerc.y;
var dist = 5;          // distanta de apropiere
var tostop = 0;
var urlpg = 'http://www.coursesweb.net';

stage.addEventListener(KeyboardEvent.KEY_DOWN, moveF);

function moveF(key_evt:KeyboardEvent):void
{
  var vi:int = key_evt.shiftKey ? 12 : 2;
  if(tostop == 0) {
    switch (key_evt.keyCode){
    case 37:
      dreptunghi.x -= vi;
      break;
    case 39:
      dreptunghi.x += vi;
      break;
    case 38:
      dreptunghi.y -= vi;
      break;
    case 40:
      dreptunghi.y += vi;
      break;
    default:
      break;
    }

    // seteazaa coordonatele de intalnire a dreptunghiului
  	var drt_x = dreptunghi.x + dreptunghi.width/2;
	  var drt_y = dreptunghi.y + dreptunghi.height/2;

    // daca distanta dintre dreptunghi si cerc a ajuns in raza de apropiere
	  if(((cerc_x - drt_x >0 && cerc_x - drt_x < dist) || (cerc_x - drt_x <0 && cerc_x - drt_x > -dist)) &&
		 ((cerc_y - drt_y >0 && cerc_y - drt_y < dist) || (cerc_y - drt_y <0 && cerc_y - drt_y > -dist))) {
	  	navigateToURL(new URLRequest(urlpg));          // deschide pagina
		  tostop = 1;        // ca sa opreasca executia codului de miscare
	  }
	}
}

Komfort Mesaje: 157
multyumesc f mult.....dar dupa ce intra pe url ala...se blocheaza imaginile.......cum sa fac ca sa se miste continu?
multumesc

MarPlo Mesaje: 4343
Miscarea se opreste prin schimbarea valorii variabilei "tostop".
Incearca varianta asta:

Cod: Selectaţi tot

// preia coordonatele cercului
var cerc_x = cerc.x;
var cerc_y = cerc.y;
var dist = 5;          // distanta de apropiere
var tostop = 0;
var urlpg = 'http://www.coursesweb.net';

stage.addEventListener(KeyboardEvent.KEY_DOWN, moveF);

function moveF(key_evt:KeyboardEvent):void
{
  var vi:int = key_evt.shiftKey ? 12 : 2;

    switch (key_evt.keyCode){
    case 37:
      dreptunghi.x -= vi;
      break;
    case 39:
      dreptunghi.x += vi;
      break;
    case 38:
      dreptunghi.y -= vi;
      break;
    case 40:
      dreptunghi.y += vi;
      break;
    default:
      break;
    }

  if(tostop == 0) {
    // seteazaa coordonatele de intalnire a dreptunghiului
     var drt_x = dreptunghi.x + dreptunghi.width/2;
     var drt_y = dreptunghi.y + dreptunghi.height/2;

    // daca distanta dintre dreptunghi si cerc a ajuns in raza de apropiere
     if(((cerc_x - drt_x >0 && cerc_x - drt_x < dist) || (cerc_x - drt_x <0 && cerc_x - drt_x > -dist)) &&
       ((cerc_y - drt_y >0 && cerc_y - drt_y < dist) || (cerc_y - drt_y <0 && cerc_y - drt_y > -dist))) {
        navigateToURL(new URLRequest(urlpg));          // deschide pagina
        tostop = 1;        // ca sa opreasca deschiderea iar a paginii
     }
   }
}

Komfort Mesaje: 157
merge....dar a 2 oara nu mai face redirect?:(...cum ar trebui sa fac
multumesc

nu ma poate ajuta nimeni?:(

Subiecte similare