Points – score
Hermed beskrivelsen og en anvendelsesprocedure for implementering i eksisterende scripts.
Princippet i trin
- at definere variabler til points, maximum-værdi, minimum-værdi og start-værdi
- at ændre værdierne på passende tidspunkt
- at vise værdierne for bruger
- at chekke om værdierne har nået den afgørende værdi
- at udføre konsekvenserne deraf
Det er meget muligt, at du har brug for kun at tælle opad – eller nedad, men her går eksempel i begge retninger, som du kan tilpasse. Eksemplet kan udbygges til også at tælle liv.
Foreslået fremgangs-rækkefølge
Nogle ’sigende’ variabler
(hører til i øverste del af et script, for nemt at kunne ’skrues’ på) :
var winScore:Number = 10; var loseScore:Number = -10; var points:Number=0;
Et dynamisk tekstfelt til display
(På et score-lag i spil.scenariet med instancenavnet ’score_txt’).
Det kan tegnes med tekstværktøjet og indstilles til dynamisk i property panelet, hvor det også formateres med lidt prøve-tekst i. Det skal være tomt for tekst når du er færdig, for teksten blir scriptet frem.
Tekst-feltet kan evt. starte ud med en forklaring:
score_txt.text = "Get "+ winScore.toString() + " points!";
Ændring af værdier
Så stilles spørgsmålet:
Hvornår eller under hvilke omstændigheder skal points- værdien stige?
Det kunne fx. være hvis noget rammer noget andet, eller hvis en status-variabel er opfyldt, eller en boolean er blevet sat til true.
I den øskede situation, som regel inden for en if-condition, øges points med den ønskede værdi:
points += 1; // eller points=points+1; // eller points+1;
Hvornår eller under hvilke omstændigheder skal points- værdien falde?
Samme overvejelser for mistede points, og hvormange af gangen:
points - -; // eller med kompleksitet fx. points/(en brøkdel af den tid der er gået);
Nye spørgsmål:
Hvornår skal points’ene vises?
Tekstfeltet påkaldes, som vist nedenfor, fx. hver gang points’ene ændres.
Hvornår har man vundet eller tabt?
Eller som i dette eksempel: Hvilke top- eller bund- værdier skal points’ene sammenlignes med?
Hvad skal der ske hvis sammenligningen passer?
Eksempel
I simpel rækkefølge
points += 2; score_txt.text = "Your points = "+ points.toString() ; if (points == winScore) { // her slukkes for evt. igangsatte ENTER_FRAME listeners gotoAndStop("win"); }
- Og tilsvarende for minus-points.
I en udregnende function
////////////// points += 2; EVALUATE(); ////////////// points --; EVALUATE(); ////////////// function EVALUATE():void { score_txt.text = "Your points = "+ points.toString() ; if (points == winScore) { // her slukkes for evt. igangsatte ENTER_FRAME listeners gotoAndStop("win"); } if (points == loseScore) { // også her slukkes for kørende ENTER_FRAME listeners gotoAndStop("lose"); } }
Created: 6 April 2008 • by admin
Categories: as3 • overblik • snippet
Comments: be the first to comment
Fra AS2 til AS3 – Kort og Groft
Strict scripting: Type definitioner
var untyped:*; // (or no typing) undefined
var boolean:Boolean; // false
var number:Number; // NaN
var integer:int; // 0
var unsignedInteger:uint; // 0
var string:String; // null
var object:Object; // null
Ingen acctionscripting direkte på knapper
Actionscripting på hovedtidslinien – og helst på første frame – eller i classes.
Knap-actions:
// event home_button.addEventListener(MouseEvent.CLICK, home_button_handler); // handler function home_button_handler(event:MouseEvent):void { gotoAndStop("homeLabel"); }
Properties
| ActionScript 2 | ActionScript 3 |
| _name | name |
| _x | x |
| _y | y |
| _width | width |
| _height | height |
| _xscale (0-100) | scaleX (0-1) |
| _yscale (0-100) | scaleY (0-1) |
| _rotation | rotation |
| _alpha (0-100) | alpha (0-1) |
| _visible | visible |
| _xmouse | mouseX |
| _ymouse | mouseY |
| _parent | parent |
Created: 25 March 2008 • by admin
Categories: as2 • as3 • overblik
Comments: be the first to comment
Walkcycle slide
Definition
En walkcycle er den sekvens af bevægelser mellem det ene trin i et gangforløb og det andet – lige til bevægelsen gentager sig.
Teknikker
- med flyttet fodfæste – til duplicering
- på stedet /trædemølle – i en movieclip til at tweene
Frame by frame eller mindre tweens
Bones (mest til kagemænd) på en shape eller dele i movieclips
Efter billeder / video
Inspiration
Se Google og myriaderne af forskellige ’stickman wars’
Legato (Nicholas Clauss)
En kreativ gif-animation
Ressourcer
Eadweard Muybridge
Preston Blair
Se tutorials på hyperlisten til animation
Created: 30 November 2007 • by admin
Categories: animation • hyperliste • overblik
Comments: be the first to comment
mcStatus function (as2)
mc er movieclippet med den sektionerede timeline og relevante labels. De har her samme navne som mcStatus værdierne!
mcStatus er en variabel der her får værdi af trin som indgår i en logisk rækkefølge. Hvert trin betinger det næste (erstat navne med dem du arbejder med).
Start med at få overblik over de forskellige mcStatus værdier
/*mcStatus værdier: sleep, awake, dressup */
Og definer så en startværdi for mcStatus
mcStatus = "sleep";
Kombinationer
Andre objekter ændrer mcStatus:
alarm_mc.onRelease = function () { if (mcStatus == "sleep") { mcStatus = "awake"; } }; dress_mc.onRelease = function () { if (mcStatus == "awake") { mcStatus = "dressup"; } };
mc aktiveres ved direkte klik:
mc.onRelease = function () { gotoAndPlay (mcStatus); };
Andre objekter ændrer mcStatus og aktiverer mc:
dress_mc.onRelease = function () { if (mcStatus == "awake") { mcStatus = "dressup"; mc.gotoAndPlay (mcStatus); } };
Created: 18 October 2007 • by admin
Categories: as2 • as3 • overblik
Comments: be the first to comment
Flash brugerflade start

Created: 14 October 2007 • by admin
Categories: overblik
Comments: 1 comment, add one
Flash basic moves
Højreklik på en frame, og du vil se en menu med relevante muligheder
Marker 1 eller flere frames
- Timeline: klik på første frame – shift-klik på den sidste.
- Timeline: hold musen nede og træk gennem alle de frames der skal markeres – og slip.
- På en motion-tween: Ctrl+Click
Copy/Paste frames sekvens
- Timeline: Marker relevante frame(s) – høreklik > copy frames
Stil dig på den rigtige frame på den rigtige timeline, højreklik > paste frames
- Hvis der skal duplikeres frames på samme timline:
Brug ovennævnte copy frames / paste frames metode, eller genvejen til metoden:
Marker frames – Alt+drag – slip musen et nyt sted..
Frames genveje
Frames redigeres hurtigst med højrekliksmenuen eller:
- F5 = frame
- F6 = keyframe
- F7 = blank keyframe
- Shift+F5 = remove frame
- Shift+F6 = clear keyframe
Opret symbol
- Library panelet: Klik i ikonmenuen nederst i panelet.
- Stage: Marker et eksisterende objekt og ‘konverter’ gennem hovedmenuen eller med højreklik.
Test movie
Ctrl+Enter / (Apple+Enter) = test swf
F12 = test html+swf
Instance-navn
Marker objektet på scenen (ikke i timeline) og udfyld < instance name > i property-panelet. Unikke navne efter gældende navngivnings-konventioner. OBS Hvis objektet er animeret og optræder på flere keyframes, skal hver instance af det navngives med samme instance-navn.
Frame label
Marker den pågældende tomme keyframe på timeline i et labels-lag og udfyld Label Name i Property-panelet. Unikke navne efter gældende navngivnings-konventioner, og kun et navn pr. frame.
Break apart, CTRL+B
- På et symbol: Objektet springer et led frem i stien, dvs. ud af den timeline det var indlejret i.
- På en tekstboks: Hvert bogstav i teksten får sin egen tekstboks. CTRL+B igen, og tekst-bogstavet konverteres til en shape.
- På et Bitmapbillede: Bitmap-symbolet konverteres til en shape med ‘bitmap-fyld’, som kan redigeres.
Created: 14 October 2007 • by admin
Categories: overblik
Comments: be the first to comment
