home *** CD-ROM | disk | FTP | other *** search
- ╠≤δ≥Φ∞σΣΦΦ Φ Φπ≡√
- ╫α±≥ⁿ VII
-
- ┬√ ∞εµσ≥σ τα∞σ≥Φ≥ⁿ Φ Ωεφ÷σ Σε∩εδφΦ≥σδⁿφ≤■ ±≥≡εΩ≤, Γ√τ√Γα■∙≤■ ∞σ≥εΣ εßφεΓδσφΦ ∩ετΦ÷ΦΦ ≥ε≡α. ▀ ≡σ°Φδ ±Σσδα≥ⁿ
- Σσ∞εφ±≥≡α÷Φ■ ßεδσσ Φφ≥σ≡σ±φεΘ, ∩≡σΣε±≥αΓΦΓ Γα∞ Γετ∞εµφε±≥ⁿ ∩σ≡σΣΓΦπα≥ⁿ αφΦ∞α÷Φεφφ√Θ εß·σΩ≥ ∩ε ²Ω≡αφ≤ ± ∩ε∞ε∙ⁿ■
- ΩδαΓΦα≥≤≡√. ▌≥ε δσπΩε ±Σσδα≥ⁿ: ∩ετΦ÷Φ ⌡≡αφΦ≥± Γ Ωδα±±σ TSirnpleAnim. ╦Φ±≥Φφπ 32.24 ∩≡σΣ±≥αΓδ σ≥ ΩεΣ ∞σ≥εΣα Move.
-
- ╦Φ±≥Φφπ 32.24 ╠σ≥εΣ Move ∩σ≡σΣΓΦπασ≥ αφφΦ∞α÷Φεφφ√Θ εß·σΩ≥ Γ ∩≡σΣσδα⌡ ²Ω≡αφα.
-
- procedure TForinl.Move( dx, dy : integer ) ;
- var i, nFrom, nTo : integer ;
- begin
- / / ∩σ≡σ∞σ±≥Φ≥ⁿ ≥ε≡√
-
- if Assigned ( Animations ) then begin
- if MoveOption = 0 then begin
- nFrom := 0 ;
-
- nTo : = Animations. Count - I ;
- end else begin
- nFrom : = MoveOption - I;
- nTo := nFrom ;
- end ;
-
- for i := nFrom to nTo do begin
- with TSimpleAnim ( Animations [i]) do begin
- X := X+dx ;
- if X < 0 then X := 0 else
- if X > 640 - 64 then X := 640 - 64 :
- I := I + dy ;
- if Y < 0 then Y := 0 else
- if Y > 480 - 64 then Y := 480 - 64 ;
- end ;
- end ;
- end ;
- end;
-
- ╠σ≥εΣ Φ±∩εδⁿτ≤σ≥ ΣΓα ∩α≡α∞σ≥≡α, Ωε≥ε≡√σ ∩≡σΣ±≥αΓδ ■≥ ≡α±±≥ε φΦσ Γ ∩ΦΩ±σδα⌡ Σδ ∩σ≡σΣΓΦµσφΦ αφΦ∞α÷Φεφφεπε εß·-
- σΩ≥α ε≥φε±Φ≥σδⁿφε ΩαµΣεΘ Φτ ε±σΘ. ▀ ΣεßαΓΦδ Ω ⌠ε≡∞σ σ∙σ εΣφε ∩εδσ, φατ√Γασ∞εσ MovedOption. MoveOption ∩≡ΦφΦ∞ασ≥
- ∩εδεµΦ≥σδⁿφεσ τφα≈σφΦσ ≥Φ∩α integer: 0 ετφα≈ασ≥, ≈≥ε ß≤Σ≤≥ ∩σ≡σΣΓΦπα≥ⁿ± Γ±σ αφΦ∞α÷Φεφφ√σ εß·σΩ≥√, Φ δ■ßεσ Σ≡≤πεσ ≈Φ±δε
- ≡ατ≡σ°ασ≥ ∩σ≡σΣΓΦµσφΦσ ≥εδⁿΩε ε∩≡σΣσδσφφεπε αφΦ∞α÷Φεφφεπε εß·σΩ≥α. ╬∩≡σΣσδΦΓ ΣΦα∩ατεφ Φ±∩εδⁿτεΓαφΦ αφΦ∞α÷Φεφ-
- φ√⌡ εß·σΩ≥εΓ (δΦßε Γ±σ εß·σΩ≥√ Γ∞σ±≥σ, δΦßε εΣΦφ σΣΦφ±≥Γσφφ√Θ εß·σΩ≥), Γ√ ÷ΦΩδΦ≈σ±ΩΦ ∩≡ε⌡εΣΦ≥σ ∞α±±ΦΓ Animations,
- ΣεßαΓδ dx Φ dy Γ ΩαµΣ≤■ αφΦ∞α÷Φεφφ≤■ ∩ετΦ÷Φ■. Move ≥αΩµσ ±δσΣΦ≥ τα ≥σ∞, ≈≥εß√ αφΦ∞α÷Φεφφ√σ εß·σΩ≥√ φσ Γ√⌡εΣΦδΦ
- τα ∩≡σΣσδ√ ²Ω≡αφα.
-
- ╬ß≡αßε≥Ωα ΓΓεΣα ± ΩδαΓΦα≥≤≡√
-
- ▀ ∞εΣΦ⌠Φ÷Φ≡εΓαδ εß≡αßε≥≈ΦΩ OnKeyDown Σδ εß≡αßε≥ΩΦ φαµα≥ΦΘ ΩδαΓΦ° Ω≤≡±ε≡α, Ωε≥ε≡√σ Φ±∩εδⁿτ≤■≥± Σδ ∩σ≡σ-
- ΣΓΦµσφΦ αφΦ∞α÷Φεφφ√⌡ εß·σΩ≥εΓ ∩ε ²Ω≡αφ≤, ΩαΩ ∩≡σΣ±≥αΓδσφε Γ δΦ±≥Φφπσ 32.25.
-
- ╦Φ±≥Φφπ 32.25 ╧σ≡σΣΓΦµσφΦσ αφΦ∞α÷Φεφφ√⌡ εß·σΩ≥εΓ ± ∩ε∞ε∙ⁿ■ ΩδαΓΦ° Ω≤≡±ε≡α.
-
- procedure TForml.FormKeyDown (Sender: TObject; var Key: Word;
-
- Shift: TShiftState) ;
- var Speed : integer ;
-
- Anoption : integer ;
- begin
- Speed := 4 ;
-
- if ssShift in Shift then Speed := I ;
- case Key of
-
- VK_ESCAPE, VK_F12 : Close ;
- VK_LEFT : XVelocity := -Speed ;
- VK_RIGHT : XVelocity := Speed ;
- VK_UP : YVelocity := -Speed ;
- VK_DOWN : YVelocity := Speed ;
- VK_SHIFT : begin
-
- if Abs( XVelocity ) > I then XVelocity := XVelocity div 4 ;
- if Abs( YVelocity ) > I then YVelocity :== YVelocity div 4 ;
-
- end ;
-
- by1:e( '0' )..byte( '9' ) : begin
- Anoption := Key -48 ;
-
- if Anoption <= Animations. Count then MoveOption : = Anoption
- end ;
- end ;
- end;
-
- ┼±δΦ ≤Σσ≡µΦΓα≥ⁿ ΩδαΓΦ°≤ Shift, αφΦ∞α÷Φεφφ√Θ εß·σΩ≥ ß≤Σσ≥ ∩σ≡σΣΓΦπα≥ⁿ± Γ ≈σ≥√≡σ ≡ατα ∞σΣδσφφσΘ, Σδ ²≥επε φσεß⌡ε-
- ΣΦ∞ε ε∩≡σΣσδ ≥ⁿ τφα≈σφΦσ δεΩαδⁿφεΘ ∩σ≡σ∞σφφεΘ Speed. ▀ ΣεßαΓΦδ ∩εδ ±Ωε≡ε±≥σΘ XVelocity Φ YVelocity, Ωε≥ε≡√σ ∩εδ≤≈α■≥
-
-