Amiga Dunyasi - Sayi 21 (Subat 1992).pdf - Retro Dergi
Amiga Dunyasi - Sayi 21 (Subat 1992).pdf - Retro Dergi
Amiga Dunyasi - Sayi 21 (Subat 1992).pdf - Retro Dergi
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
DERLEYİCİLER<br />
SpritePtr -> SimpleSprite structure yapısı. .<br />
SpritelmPtr -> Spritelmage structure yapısı.<br />
GetSprite() fonksiyonu ise şöyle çalışıyor:<br />
Kullanımı: SpriteNrl = GetSprite(SpritePtr,SpriteNr2);<br />
Fonksiyonu: SimpleSprite structure yapısına bağlı olarak o<br />
sprite'ı hazırlar.<br />
Parametreleri:<br />
SpriteNrl -> Integer olarak, hazırlanan sprite numarasını verir.<br />
SpriteNr2 olarak verdiğimiz sprite doluysa, bu değerden farklı<br />
oir numara ile geri döner.<br />
SpriteNr2 -> Kullanmak istediğimiz sprite numarasını belirtir.<br />
SpritePtr -> SimpleSprite structure yapısını belirtir.<br />
GetSpriteO ile açmış olduğumuz sprite'ı ise FreeSpriteO ile<br />
şöyle kapatıyoruz:<br />
Kullanımı: FreeSprite(SpriteNr);<br />
Fonksiyonu: SpriteNr ile verilen numaradaki sprite'ı kapar.<br />
Parametreleri:<br />
SpriteNr -> Kapanmasını istediğimiz sprite numarası.<br />
MoveSprite()'m kullanımı ise şöyledir:<br />
MoveSprite(ViewPort, SpritePtr, x, y);<br />
Fonksiyonu: Sprite'm pozisyonunu değiştirir.<br />
Parametreleri:<br />
ViewPort -> ViewPort yapı değişkeni.<br />
SpritePtr -> SimpleSprite yapı değişkeni.<br />
x, y -> yeni pozisyon değerleri.<br />
Sprite'lar için kullandığımız fonksiyonlar bunlardan ibaret. Arlık<br />
program örneğimize bir göz atabiliriz.<br />
Bu örneğimizde ilk olarak WorkBench ekranımız sağdan sola<br />
kayarak temizleniyor. Daha sonra ekrana sprite'imiz geliyor. Sol<br />
tuşa basarak programdan çıkıyoruz.<br />
/* Programming by CENKER OZKURT */<br />
#include <br />
#include <br />
#include <br />
#include <br />
#include <br />
struct IntuitionBase *IntuitionBase;<br />
struct GfxBase *GfxBase;<br />
struct RastPort *rp;<br />
struct ViewPort *vp;<br />
Ntruct Screen *screen;<br />
#definePI3.14<br />
int a;<br />
float x,y;<br />
/* Spritelmage yapısında hazırlanıyor.*/<br />
USHORT sprite[] =<br />
{<br />
0,0,<br />
0x0000,0xffff,<br />
0xffff,0x0000,<br />
0xffff,0x0000,<br />
0xf000,0x0000,<br />
0xf000,0x0000,<br />
0xf000,0x0000,<br />
0xf000,0x0000,<br />
0xf000,0x0000,<br />
0xf000,0x0000,<br />
0xf000,0x0000,<br />
0xf000,0x0000,<br />
0xf000,0x0000,<br />
0xf000,0x0000,<br />
0xffff,0x0000,<br />
0xffff,0x0000,<br />
0x0000,0xffff,<br />
0,0<br />
};<br />
struct SimpleSprite sp =<br />
{<br />
&sprite[0],<br />
16,0,0,3<br />
};<br />
float sin(),cos();<br />
UBYTE*m=0xbfe001;<br />
main()<br />
{<br />
IntuitionBase=OpenLibrary("intuition.library",0);<br />
if(IntuitionBase==NULL) {<br />
printf("intuition TNn");<br />
return(0);<br />
}<br />
GfxBase=OpenLibrary("graphics.library",0);<br />
if(GfxBase==NULL) {<br />
printf("graphics Ân");<br />
CloseLibrary(IntuitionBase);<br />
return(0);<br />
}<br />
screen=IntuitionBase->ActiveScreen;<br />
rp=&screen->RastPort;<br />
vp=&screen->ViewPort;<br />
SetRGB4 (vp,20,9,9,9);<br />
SetRGB4(vp,<strong>21</strong>,11,11,11);<br />
SetRGB4(vp,22,13,13,13);<br />
SetRGB4(vp,23,15,15,15);<br />
for(a=0;a