Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 04-07-2004, 00:22   #1 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 9
zehntel Sekunden

Hallo,
kämpfe gerade unter Zeitnot mit folgendem Problem:

In einem Spiel werden Punkte 160 Punkte vergeben, sobald ich eine Frage sofort beantworte. Pro Zehntelsekunde die ich zum Überlegen brauche, soll 1 Punkt abgezogen werden. Für das richtige Beatworten der Frage bekomme ich 10 Punkte!

Sprich bei 0 Sekunden überlegen bekomme ich 160 Punkte, in der letzten möglichen Zehntelsekunde bekomm ich einen Punkt.

Meine Formel, die leider nicht hinhaut sieht folgendermassen aus:
Number (160-(Number(15-sec)*10/10))

Kann mir bitte jemand helfen und mir sagen, wie die Formel richtig lauten muss?
Danke Vielmals im Voraus und die besten Wünsche
Roland Kießling
ToyonGraphics ist offline   Mit Zitat antworten
Alt 04-07-2004, 00:54   #2 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
aberbeite doch mit setInterval welces immer den score verringert
__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 04-07-2004, 00:57   #3 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 9
Hi,

danke für die schnelle Antwort, könnte ich evtl nen paar Zeilen Code in Bezug auf meine Formel haben, um mich zurecht zu finden, bin ein Anfänger in Sachen Actions Script

Danke Grüße Roland
ToyonGraphics ist offline   Mit Zitat antworten
Alt 04-07-2004, 01:23   #4 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
zB.
PHP-Code:
//ausgangsScore
meinScore 1000;
function 
timer(t) {
    
setInterval(function () {
        
trace("warte");
        
meinScore -= 10;
        if (
sig) {
            
clearInterval(k);
            
trace(meinScore);
        }
    }, 
t*1000);
}
//zeitpunkt: bedenkzeit startet
timer(.2);
//timer t sekunden anzahl des interval
//zeitpunkt: frage wurde beantowrtet
onMouseDown = function () {
    
sig true;
}; 
sowas
__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 04-07-2004, 09:59   #5 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 9
Danke vielmals, wir gucken mal, ob wir das so hinbasteln können, kann aber sein, dass ich nochmals blöd fragen muss *gg*

Danke und Grüße
Roland
ToyonGraphics ist offline   Mit Zitat antworten
Alt 04-07-2004, 10:13   #6 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
blöd fargen is immer gut *gg*
scherz bei seite, klar bei fragen fragen
__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 04-07-2004, 12:06   #7 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 9
Hallo nochmal,

hat sich herausgestellt, dass wenn wir es so versuchen, wie Du uns beschrieben hast, wir alle anderen Funktionen auch ändern müssen, die Sache ist recht komplex.
Daher nochmals die Frage, wie kann man die oben angegebene Formel so abändern, dass sie Zehntelsekunden verarbeiten kann.

Danke nochmals und viele Grüße

Roland
ToyonGraphics ist offline   Mit Zitat antworten
Alt 04-07-2004, 12:18   #8 (permalink)
Herr Brot
 
Benutzerbild von mati
 
Registriert seit: Dec 2002
Beiträge: 1.692
also, wenn ich dich richtig verstanden habe, dann müsste es etwa so aussehen:
Code:
punkte = 10 + (150-sec*10);
jetzt musst du noch abfangen, dass sec kleiner als 15 wird und die zahl evtl. runden.


gruß, mati
__________________
„Ich war geheilt, all right!“
mati ist offline   Mit Zitat antworten
Alt 05-07-2004, 15:42   #9 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 9
Das haut leider nicht hin, irgendwas stimmt nicht.
Die Ergebnisse müssen folgendermassen aussehen:
Der User bekommt für das richtige beantworten 10 Punkte
bei genau 1 Sekunde Restzeit bekommt der usr 20 Punkte (10 + 10)
Bei 2 Sekunden Restzeit 30
Bei 2 Sekunden und einem zehntel bekommt er 31 Punkte (10 + 20 +1)
Bei 2 Sekunden und vier zehntel bekommt er 34 Punkte....

usw...

kann mir jemand bitte helfen mir der oben genannten Formel?

Danke Vielmals Grüße
Roland
ToyonGraphics ist offline   Mit Zitat antworten
Alt 05-07-2004, 16:18   #10 (permalink)
Neuer User
 
Registriert seit: Jun 2001
Ort: Stuttgart
Beiträge: 6.415
du hast doch gegeben
ausgangspunkte
und

zehntelsekunden

also is doch der punktewert nach 100 zehntelsek(10s)

160-100 //10 sek

160-150 //15 sek

160-31 //3,1 sek



deluxe
Deluxe ist offline   Mit Zitat antworten
Alt 05-07-2004, 19:09   #11 (permalink)
Neuer User
 
Registriert seit: Feb 2003
Beiträge: 1
Counter mit Zehntel

So..Hallo erstmal ...

Jetzt erklär ich nochmal:

Momentan haben wir die Formel so

TotScore = Number(TotScore)+10+(sec*10);

Damit bekommen wir bei 15 sec = 160 Punkte... 4 sec = 50 Punkte etc.

die Variable sec holt sich die daten aus dem dynamischen textfeld, in dem der counter die sekunden runterzählt.

die funktion für den counter sieht so aus (ins textfeld is ne 15 geschrieben):

in keyframe 61

Now = 0;
StartTime = getTimer();

in keyframe 63

Now = (getTimer()-StartTime);
if (Number(Now)<1000) {
gotoAndPlay(63);
} else {
nextFrame();
}

So funktionierts mit sekunden momentan. Wenn ich jetzt hingehe und hänge bei getTimer()/100; dran, um zehntel zu bekommen, dann zählt der counter überhaupt nich mehr. Folglich bekomme ich immer die volle Punktzahl, egal wie lange ich brauche. Hab schon probiert im Textfeld was zu ändern, aber das bringt anscheinend nix.

Er soll also im textfeld quasi so zählen: 15, 14.9, 14.8, 14.7 ... etc. dann könnte ich die formel auch so umschreiben, dass auch punkte von 1-9 vergeben werden.

Kann jemand helfen bzw. blickt jemand durch?

gtx Dusk
Dusk ist offline   Mit Zitat antworten
Alt 06-07-2004, 14:58   #12 (permalink)
Neuer User
 
Registriert seit: Jun 2001
Ort: Stuttgart
Beiträge: 6.415
wenn du 10tel willst mußte doch nur
if (Number(Now)<1000) in if (Number(Now)<100) umändern
dann wird der rumpf alle 10tel sekunde aufgerufen-entsprechend wird dein getTimer() wert diesen 10tel sekunden entsprechen?

deluxe
Deluxe ist offline   Mit Zitat antworten
Alt 06-07-2004, 15:36   #13 (permalink)
Herr Brot
 
Benutzerbild von mati
 
Registriert seit: Dec 2002
Beiträge: 1.692
bei meiner formel ging ich davon aus, dass du ne variable namens sec hast, die dann heruntergezählt wird. startwert wäre 15 (sekunden), die var zählst meinetwegen mit nem intervall alle 100 ms runter und gut is.


grüße, mati
__________________
„Ich war geheilt, all right!“
mati 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 15:26 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele