Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 30-07-2003, 11:59   #1 (permalink)
the matrix has you
 
Registriert seit: Nov 2001
Ort: Psion
Beiträge: 832
Question per Zufallsgenerator Werte alle 24 std. generieren...

hi leuts,

ich will ein script basteln, dass drei random-werte in einem bereich von 500-3000 erzeugt wobei der erste der drei werte immer nur zw. 50 und 200 liegen darf.
diese werte sollen alle 24 std. neu vom skript generiert werden wobei die neuen werte immer um einen bestimmten zufallsfaktor größer sein müssen als die alten. das passiert solange, bis einer der werte größer als 2950. => dann geht's wieder von vorne los.

achja nochwas: dieses script soll in meine index.swf rein und die werte in drei dynamischen textfeldern anzeigen. ruft ein user die site öfter als einmal in 24 std auf, dann sollten die werte natürlich unverändert bleiben. ich nehme an, dass diese funktionalität nur dann funtzt wenn flash irgendwelche werte (uhrzeit, variable für if-check od. so) an ein php-script übergeben kann dass diese dann in eine db-tabelle einträgt. deswegen habe ich auch php und mysql zur verfügung.

das script sieht im moment wie folgt aus und ich weiß wirklich nicht weiter:
//erstes mal random: wert darf nur zw. 50-200 liegen
//hier darf flash auch nur einmal reinkommen
r1 = random(50)+1; //wie sagt man da von 50-200?

//zweiter und alle weiteren durchgänge
do {
rNext = random(2950)+1;
} while (???)
//in dieser random darf nur ein wert erzeugt werden der größer als der ursprüngliche ist. allerdings soll auch hier nur ein neuer wert generiert werden der in einem bereich von 20-100 über dem alten liegt.

getTimer() //trotz referenz weiß ich nicht wie man dass macht, dass nur alle 24 std. die randoms aufgerufen werden

===> falls es zu unverständlich war, hier mal ein zahlenbeispiel:
Tag 1:
wert1 = 89
wert2 = 64
wert3 = 121
Tag 2:
wert1 = 119 (neuer wert darf nur max. um 20-100 einheiten höher sein)
wert2 = 133
wert3 = 189
usw.
=> wenn einer der werte 2950 erreicht hat, dann beginnt das spiel wieder von vorne. allerdings sind die werte unabhängig voneinander. soll heißen wenn wert2 und/oder wert3 zB noch nicht 2950 erreicht haben dann geht's bei denen normal weiter

könnt ihr mir da bitte weiterhelfen???
__________________
!NO RISK - NO FUN!
neohacker ist offline   Mit Zitat antworten
Alt 30-07-2003, 12:48   #2 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
mal ein beispiel soweit ichs überhaupt geblickt habe.
für einen wert bei 50 aufrufe und endzahl 1000.

ActionScript:
  1. wert1=30
  2. mod1=150
  3.  
  4. for(i=0;i<50;i++){
  5.     if(wert1>1000){
  6.     wert1=30
  7.     mod1=150
  8. }
  9. wert1 +=(random(mod1)+20)
  10. mod1 = random(80)
  11.    
  12. trace(wert1+"     >  "+mod1)
  13. }
__________________
gruß Harry

Geändert von HAY (30-07-2003 um 12:55 Uhr)
HAY ist offline   Mit Zitat antworten
Alt 30-07-2003, 13:26   #3 (permalink)
the matrix has you
 
Registriert seit: Nov 2001
Ort: Psion
Beiträge: 832
hmm, weiß nicht wirklihc was du meinst.

ich versuch's nochmal in kurzform:

ich benötige eine funktion die alle 24 std. drei zufällige werte in einem bestimmten intervall erzeugt.

Bsp:
Tag 1:
zufallswert1 = 89 (wert muss zw. 50 und 200 liegen)
zufallswert2 = 64
zufallswert3 = 121
Tag 2:
zufallswert1 = 119 (neuer wert darf nur max. um 20-100 einheiten höher sein)
zufallswert2 = 133
zufallswert3 = 189
usw.

=> das ganze steigert sich solange bis ein zufallswert 2950 erreicht. dann beginnt's wieder von anfang. sprich: es wird wieder ein wert zw. 50 und 200 erzeugt.......

hoffentlich war es jetzt verständlicher?
__________________
!NO RISK - NO FUN!
neohacker ist offline   Mit Zitat antworten
Alt 30-07-2003, 13:54   #4 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
macht das ja da oben 1000 kann man ja ersetzten mit 2950
es ging mir einfach ums testen der zahlen
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 30-07-2003, 14:05   #5 (permalink)
the matrix has you
 
Registriert seit: Nov 2001
Ort: Psion
Beiträge: 832
sorry, HAY aber ich verstehe immer noch nicht ganz was du meinst.
was tut dein script genau??
=> wenn ich's in flash ausführe bekomme ich in zwar zahlen raus, ich habe aber wie gesagt keine ahnung was da bei der random mit mod und so passiert!?!? kann st du mir das kurz erläutern?

noch was:
wie mach ich dass, dass es nur alle 24 std. aufgerufen wird? dazu muss es doch in eine funktion rein oder??
__________________
!NO RISK - NO FUN!
neohacker ist offline   Mit Zitat antworten
Alt 30-07-2003, 14:43   #6 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
ActionScript:
  1. // anfangswert auf 30 weil bekommt nachher beim random
  2. // nochmal 20 dazu also habe ich 50
  3. wert1=30
  4. // mod1 ist der erste raum an zahlen also von 0 bis 150
  5. // wert1 wird dann beim ersten random eine zahl zwischen
  6. // 50 und 200
  7. mod1=150
  8. // die for schleife ist nur zum testen
  9. for(i=0;i<50;i++){
  10.         // wenn wert1 > 2950 dann wieder von vorne
  11.         if(wert1>2950){
  12.                 wert1=30
  13.                 mod1=150
  14.         }
  15. //      wert1 = wert1 + zufall aus mod1 + 20
  16. // bz:    30  =  30      +     82                + 20   ist  132 
  17.         wert1 +=(random(mod1)+20)
  18. // beim zweiten durchlauf brauchen wir einen zahlenraum von
  19. // 20 bis 100 also zufallszahl bis 80 weil nacher + 20
  20.         mod1 = random(80)
  21.        
  22.         trace(wert1+"     >  "+mod1)
  23. }

das mit den 24h must du wohl über php machen.
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 30-07-2003, 15:52   #7 (permalink)
the matrix has you
 
Registriert seit: Nov 2001
Ort: Psion
Beiträge: 832
danke HAY!
jetzt ist mir die sache schon vielllllllllll klarer.

was ich allerdings noch immer ganz kapiere ist dieser teil:

// beim zweiten durchlauf brauchen wir einen zahlenraum von
// 20 bis 100 also zufallszahl bis 80 weil nacher + 20
mod1 = random(80)
trace(wert1+" > "+mod1)
}

=> was sagt mir eigentlich die traceausgabe? warum hab ich da wert1 und mod1?

24h:
wie soll ich das über php machen?
zuerst die serverzeit abfragen und mit der des users vergleichen und beide als vars dann in flash schicken??
__________________
!NO RISK - NO FUN!
neohacker ist offline   Mit Zitat antworten
Alt 31-07-2003, 07:42   #8 (permalink)
the matrix has you
 
Registriert seit: Nov 2001
Ort: Psion
Beiträge: 832
HAY??
__________________
!NO RISK - NO FUN!
neohacker ist offline   Mit Zitat antworten
Alt 31-07-2003, 07:55   #9 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
php
lese datei
dann teste den tag mit dem aktuellen tag
wenn ungleich berechne die werte und mod neu.
und speicere die werte.


tag, wert1, mod1, wert2, mod2, wert3, mod3

die kannst du dann in flash laden.
fertig

sorry reihenfolge war falsch
__________________
gruß Harry

Geändert von HAY (31-07-2003 um 07:58 Uhr)
HAY ist offline   Mit Zitat antworten
Alt 31-07-2003, 08:11   #10 (permalink)
the matrix has you
 
Registriert seit: Nov 2001
Ort: Psion
Beiträge: 832
warum ist eigentlich immer mod dabei?
ich brauch doch für die ausgabe nur wert1/2/3 ???

bez. php:
soll ich jetzt alles in php machen und nur die werte in flash laden od. bleibt das random-coding in flash?

=> die frage hat sich aufgeworfen weil du meintest "die kannst du dann in flash laden. fertig"
__________________
!NO RISK - NO FUN!
neohacker ist offline   Mit Zitat antworten
Alt 31-07-2003, 08:15   #11 (permalink)
God made me funky..
 
Registriert seit: Apr 2003
Ort: Bremen
Beiträge: 1.067
Mal eine andere Frage, soll der Film denn die ganze Zeit laufen? Wenn nicht musst du die jeweils letzte Variable eh irgendwo speichern und dann drängt sich die serverseitige Verarbeitung des Ganzen ja geradezu auf.
__________________
Kunst ist in erster Linie eine Frage der Form und nicht des Inhalts
Paul Rand
e2e4 ist offline   Mit Zitat antworten
Alt 31-07-2003, 08:15   #12 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi
alles in php
mod = weil du hast doch zwei verschiedene bereichs werte

immer am anfang 50-200 = 150
und die weiteren 20-100 = 80
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 31-07-2003, 08:21   #13 (permalink)
the matrix has you
 
Registriert seit: Nov 2001
Ort: Psion
Beiträge: 832
alles klar, leute.

inzwischen ist mir völlig klar, dass es nur in php funtzen kann. zwecks anzeige und optik importiere ich die werte natürlich in meine index.swf.

aber ich muss ja mind. die random-werte und den aktuellen tag in einer db-tabelle loggen.

ich versuch's mal in der php-sektion od. habt ihr noch irgendwelche statements dazu?
__________________
!NO RISK - NO FUN!
neohacker ist offline   Mit Zitat antworten
Alt 31-07-2003, 08:29   #14 (permalink)
HAY
Neuer User
 
Benutzerbild von HAY
 
Registriert seit: Aug 2002
Ort: Faust-Stadt
Beiträge: 2.577
hi sorry jetzt komme ich auch schon durcheinader
in php den aktuellen wert berechnen
zb: 81, 120, usw
dann den mod wert entweder 150 oder 80
und speichern
dann in flash reinladen
wenn mod =150 dann +50
wenn mod =80 dann +20
ActionScript:
  1. wert=random(mod)+XXX
__________________
gruß Harry
HAY ist offline   Mit Zitat antworten
Alt 31-07-2003, 08:33   #15 (permalink)
the matrix has you
 
Registriert seit: Nov 2001
Ort: Psion
Beiträge: 832
achso meinst du das?

flash macht weiterhin die random, bekommt die grundlagen-werte von php. meinst du das so??

wenn ja, dann bin ich der meinung dass man gleich alles in php handeln kann. auf die random kommt's da auch nimma an.

__________________
!NO RISK - NO FUN!
neohacker 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 00:30 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele