Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 01-01-2006, 14:54   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 30
Flash soll movieclip "merken" o_O

Wieder einmal hallo an euch alle.

Diesesmal habe ich eine ganz komplizierte Frage und da ich sie nicht gut erklären kann beschreib ich euch einfach meine derzeitige Flash-Situatuion.

Nun, Ich habe gerade ein Minispiel erstellt. Im Hintergrund läuft ein 1 min Zähler. Es ist ganz billig: In Wirklichkeit nur ein Movieclip der alle 10 Frames eine Zahl herunter zählt.

Wenn man das Spiel in einer gewissen Zeit schafft bekommt man einen Pokal.
Das habe ich bereits fertig.
mit einem simplen _parent. nextframe script.
Auch der Pokal ist ein simpler Movieclip mit 3 frames (gold,silber,bronze).

Nun, wenn ich das Spiel in 30 min schaffe (zB) dann springt der Pokal MC auf Frame 2 und ich krieg "Silber".

Nun, jetzt meine Frage. Ist es möglich mit einem Script dem Flash zu sagen, dass er diesen MC Highscore "Silber" speichert?
Also, soll heißen, wenn ich den Flash wieder öffne und <nicht spiele> oder verliere, dass der Pokal-Movieclip trotzdem auf frame 2 startet, da ich ja letztesmal Silber hatte.
(sozusagen, eine Art Highscore Liste)

Hoffe ihr versteht was ich meine, ich hab letzte Nacht damit herumexperimentiert weiß aber echt keinen Rat. Und ob das mit den MC überhaupt geht oder ob es einfachere Wege gibt weiß ich auch nicht.
_Holy_ ist offline   Mit Zitat antworten
Alt 01-01-2006, 15:01   #2 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 10
Hi,
soll der Highscore lokal für jeden Spieler gespeichert werden, oder soll es eine allgmeine Highscoreliste geben?

Gruß
7bit_woitek
7bit_woitek ist offline   Mit Zitat antworten
Alt 01-01-2006, 15:34   #3 (permalink)
.
 
Benutzerbild von marcorei
 
Registriert seit: Dec 2003
Ort: Regensburg
Beiträge: 114
Hi Holy,

sollte mit nem SharedObject klappen, so eine Art Cookie von Flash.

greez,
marcorei
marcorei ist offline   Mit Zitat antworten
Alt 01-01-2006, 16:06   #4 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Hi,

da hast du eigentlich nur zwei Möglichkeiten:

Über die Lösung von "marcorei".
Wenn der User aber von einen anderen PC das Spiel aufruft ist sein Status = 0
Er muß also neu anfangen.

Oder über eine Datenbank.
Da muß der User sich am Anfang anmlden (Passwort und Username zb.) .
Damit werden die gespeicherten Daten des Users geladen.
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 01-01-2006, 16:07   #5 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 30
Hi,

Also geplant war ein Frame wo alle eigenen Highscores gespeichert werden. Also... ja, lokal.

Habt ihr eine Idee?

Und wie genau schreibt man die Scripts von den SharedObject?
So etwas hab ich noch nie gemacht.

Gruß,
Holy

Zitat:
Zitat von 7bit_woitek
Hi,
soll der Highscore lokal für jeden Spieler gespeichert werden, oder soll es eine allgmeine Highscoreliste geben?

Gruß
7bit_woitek
_Holy_ ist offline   Mit Zitat antworten
Alt 01-01-2006, 16:19   #6 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Hi,

das SharedObject hat nichts mit einen Frame zu tun.

Das SharedObject speichert Daten auf den lokalen PC in einer *.sol Datei.
Dadurch sind die Daten auch nur auf diesen PC verfügbar.

Starte mal die Suche nach SharedObject.
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 01-01-2006, 16:36   #7 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 30
Ok,
Hab bei google ein wenig gesucht und auch was gefunden.
Ich versteh allerdings jetzt nicht was ich für einen Script in meinem Pokal-MC machen muss damit beim nächsten öffnen das richtige Ergebnis steht.

EDIT:

So mein Plan ist:

Ich will in meinem Pokal MC pro Pokal-Frame eine variable verstecken die beim nächtsen öffnen auf der Highscoreliste zu laden ist. Jetzt gibt es aber folgendes Problem.

Zum einen wollen die nicht geladen werden und folgendes Problem kommt noch:
wie soll ich Flash sagen, dass es nur die <besseren> Highscores speichern soll. ich meine, wenn man Gold geschafft hat und dann Bronze, dann soll logischerweise das GOLD Ergebnis nicht von der Bronze überschrieben werden?!

Geändert von _Holy_ (01-01-2006 um 16:41 Uhr)
_Holy_ ist offline   Mit Zitat antworten
Alt 01-01-2006, 16:52   #8 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Hi,

suche mal hier im Forum nach SharedObject .

Wenn du das verstanden hast, brauchst du da doch nur den Stand
des Spielers zu speichern. Wenn der Spieler "Gold" hat ist in dieser Datei
auch Gold gespeichert.
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 01-01-2006, 17:21   #9 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 30
Das hier ist echt zum verzweifeln... -_-

Ich habe mit hilfe von ein paar Turtorials sowas gebastelt:

2 frames.
Bei beiden sind 2 dynamische textfelder mit variabelnamen. Hier soll später das Ergebnis stehen.

u.a. hab ich im ersten Frame stehen: local_data.data.user= "Test";

bei beiden Frames ist ein stop(), so wenn ich die swf teste passiert aber noch nichts. Ich muss erst auf play klicken und dann steht im unteren Feld "Test".

Soweit so gut. Aber wenn ich die swf wieder schließe und erneut öffne ist die Box wieder leer.

Ich glaub da mach ich irgendwas falsch ^^
_Holy_ ist offline   Mit Zitat antworten
Alt 01-01-2006, 18:30   #10 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 30
Ok,
das eine Problem ist gelöst aber ich glaub da ist der Wurm drin.

im ersten frame steht
local_data.data.user = "Gold";
stored_pokal = local_data.data.pokal;

Und wenn ich das richtig verstanden hab steht das erste für das Speichern des cookies und der zweite Script für das laden.

Das funktioniert auch gut.

Jetzt hab ich allerdings einen zweiten flash gemacht wo nur die stored_pokal = local_data.data.pokal; steht. Jetzt sollte man meinen das er trotzdem auf den Cookie zugreift und ladet , das tut er aber nicht?!?!?!

Die dynamischen Textfelder sind auch identisch. Wo liegt das Problem?
_Holy_ ist offline   Mit Zitat antworten
Alt 01-01-2006, 19:32   #11 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Hi,

wenn du eine neue Datei (FLA) erstellst, kann diese nicht auf deine
alte *.sol Datei zugreifen.
Die SOL datei hat statt des Stern den Dateinamen.
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 01-01-2006, 19:34   #12 (permalink)
Neuer User
 
Registriert seit: Oct 2005
Beiträge: 30
Aha,

aber es muss doch gehen? Die fla muss nur die richtige SOL Datei finden?

Zitat:
Zitat von harego
Hi,

wenn du eine neue Datei (FLA) erstellst, kann diese nicht auf deine
alte *.sol Datei zugreifen.
Die SOL datei hat statt des Stern den Dateinamen.
_Holy_ ist offline   Mit Zitat antworten
Alt 01-01-2006, 19:38   #13 (permalink)
Neuer User
 
Registriert seit: Jan 2006
Beiträge: 10
hi,

du bist ja schon mal recht weit. Das ist gut. Ich glaube,dass dein Problem im Moment dartin liegt, dass du die Daten nicht wirklich auf der Platte speicherst, sondern nur im Arbeitsspeicher ablegst. Beim speichern auf der Platte musst du dann auch darauf achten, dass du den absoluten Pfad angibst. Sonst holst du dir jedes mal, wenn du das file neu in den Cache lädst den relativen Pfad vom zufällig generierten Tempverzeichnis.

ist nur mal so ein gedankengang, da ich selbst noch nicht mit sharedObjects gearbeitet hab. Ich hoffe es hilft ein wenig.
7bit_woitek ist offline   Mit Zitat antworten
Alt 01-01-2006, 19:52   #14 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Hi,

natürlich geht es.

In der Praxis hat deine Datei zb den namen : test.swf
Die wird ja durch deine HTML aufgerufen.
Nun mußt du beim aufruf deine SO (SharedObject ) abfragen.

zb:


PHP-Code:


function shared_open_f ()
{
    
trace ("shared aufgerufen");
    var 
mysobj SharedObject.getLocal ("test");
    
_global.status mysobj.data.spielStatus;
    
txt.text "Shared " status;
    return 
status;
}
_________________________________________________
if (shared_open_f ())
{
//mache was

__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 01-01-2006, 20:37   #15 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
HI,

stimmt nicht, Sorry !

Was soll gespeichert werden und durch welchen Event soll die Speicherung
ausgelöst werden ?
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 12:34 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele