Visualizzazione dei risultati da 1 a 2 su 2

Discussione: gestire un inventario

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    3

    gestire un inventario

    ciao a tutti sono nuovo di questo forum e mi cimento con flash da poche settimane,
    ho un problema per gestire un inventario.

    ho creato 19 clip (che sarebbero gli slot dell inventario) e tot clip/pulsanti che sarebbero gli oggetti da sistemare negli slot,

    ho usato la funzione drag e l hittest per posizionarli correttamente però il problema nasce qualora l utente volesse prendere un oggetto posizionato gia in uno slot e posizionarlo in un altro anch'esso con un oggetto al suo interno.

    ho pensato di crearmi delle variabili che identificassero lo slot vuoto o pieno ma non mi funziona, o meglio, funziona male... in oltre sarebbe utile che, come nell esempio appena fatto, i due oggetti si scambiassero di slot ma non ho idea di come fare per far "ricordare" all oggetto le coordinate di partenza.

    probabilmente c è una funzione che ignoro e che mi semplificherebbe la vita senza dover scrivere righe e righe di codici..

    ribadisco sono un novizio e affronto i problemi mano mano che mi si presentano davanti,
    spero di essere stato chiaro e che qualche anima mi dia una mano..

    sto usando flash 5, credo che usi action script 2 no!?

    sono due giorni che ci sbatto la testa

    vabbè ciao a tutti.

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2009
    Messaggi
    3
    uhm... nessuno?

    cmq ho risolto in questa maniera:

    in ogni clip/slot ho messo

    onClipEvent (load) {
    x = 44.7;
    y = 211.9;
    spazio;
    }

    la x e la y variano a seconda dello slot ovviamente
    e sull oggetto ho messo questo

    on (press)
    {
    this.swapDepths(4);
    this.startDrag(true, 21.5, 190, 267, 384);
    _root.cox = _x;
    _root.coy = _y;
    }

    on (release)
    {
    if (_root.slot1.hitTest(this))
    {
    setProperty (this, _x, _root.slot1.x);
    setProperty (this, _y, _root.slot1.y);
    this.stopDrag();
    _root.slot1.spazio = 1;
    }
    if (this.hitTest(_root.provaitem1))
    {
    setProperty (_root.provaitem1, _x, _root.cox);
    setProperty (_root.provaitem1, _y, _root.coy);
    this.stopDrag();
    }
    }

    l unica paranoia è che dovrei ripetre questo script per ogni slot esistente, inoltre dovrei
    ripetere l ultimo if per ogni oggetto che aggiungo... non mi sembra molto pratico...
    idee? consigli?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.