Kirjautuminen

Haku

Tehtävät

Keskustelu: Koodit: QB: Ilotulitus

Sivun loppuun

Puhveli [13.03.2004 19:07:00]

#

Tässä on kanssa yksi suhteellisen kauan sitten tekemä ohjelmani. Sen on tarkoitus havainnollistaa TYPEn käyttömukavuutta ja ylipäänsä ilotulitusta. Ehkä se toimisi paremmin jos tuota turhaa sälää ei olisi niin paljoa :D Älkää ampuko minua, tiedän tehneeni väärin kun yleensä ehdotin tätä ohjelmointiputkaan.

PS. Tuossa muuten näette useita sujuvia ja ihailtavia esimerkkejä siitä, kuinka englantia EI puhuta tai kirjoiteta.

   '  Ihmemies McEronen Software 13.12.2003                     `
   '    ÛÛÛÛÛÛ²ÛÛ±°  ÛÛ±          ±²ÛÛ                °±±°      `
   '    ÛÛ²±°  ÛÛ±°  ÛÛ± ÛÛÛ ±Û±ÛÛÛ²ÛÛ±²ÛÛ        °±±±±²²±°     `
   '    ÛÛÛÛÛÛ²ÛÛ±ÛÛ±ÛÛ±ÛÛ°ÛÛ±ÛÛÛ ±²ÛÛÛÛ     °°±±±²²²ÛÛÛÛ²±°    `
   '    ÛÛ²±°  ÛÛÛÛÛÛÛÛ±ÛÛ°ÛÛ±ÛÛ  ±²ÛÛ²ÛÛ         °±±±±²²±°     `
   '    ÛÛ²±°   ÛÛ± ÛÛ±  ÛÛÛ ±ÛÛ  ±²ÛÛ±²ÛÛ            °±±°      `
   '          Controller version 1.21                            `

'*** AUTHOR ***
   '(C) Ihmemies McEronen Software / Topi Eronen 13.12.2003
   'email: joe_eronen@suomi24.fi

'*** ABOUT THE INDICATORS ***
  'Green line:  Player's health. When disappears, game is over
  'Blue line:   Atmosphere, how people feel. Try to keep as high as possible
  'Red line:    Resources used. When max, no more pixels appaears (in theory)
  'Yellow line: JetPack fuel. When zero, you fall. Fall hurts. Not good.

'*** KEY CODES ***
   'Arrows = Move poor human around the table
   'Up     = Fly with JetPack
   'Down   = Stop sliding (moving)
   'Enter  = Drop basic firework
   'NP 0   = Throw "popcorns"
   'Space  = Drop Cauldron Box (some multicannon)
   'BckSpc = Drop "Millennium party"
   'Delete = Clear all pixels from the sky
   'End    = Suicide (to see how blood flies)
   'Esc    = End this abject and useless little game

 'That was all. There, couple of rows below, are some constant values,
 'whose can be freely changed to customize show


DECLARE SUB Demo ()
DECLARE SUB Explode (x#, y#, Horizontal#, Vertical#, BYVAL Size#, ColorFlag AS INTEGER)
DECLARE SUB Hide (Index AS DOUBLE)
DECLARE SUB Hurt (Damage AS INTEGER)
DECLARE SUB Initialize ()
DECLARE SUB NewSpark (x#, y#, Hor#, Ver#, Clr#, SpawnFlag#, Specials#)
DECLARE SUB Pause (DelayTime#)
DECLARE SUB Range (Variable AS SINGLE)
DECLARE SUB Sparks ()
DECLARE SUB SetLaunch (x AS INTEGER, Delay AS INTEGER, Specials AS INTEGER) : CONST Bullshit = 0, True = NOT Bullshit, False = 0, Never = 0


'*** CONSTANTS ***
 'These values can be freely changed. Negative values are also False and 0
    CONST FrameDelay = .03   'Time to wait between every frame (Seconds)
    CONST Sounds = True      'Tick when rocket flies and detonates
    CONST FadingSpeed = 3    'How fast sparkles disappears (0 = interesting)
    CONST Radius = 100       'Radius of detonation (Default 100%)
    CONST BloodAmount = 100  'How much blood when hurts (Default 100%)
    CONST CauldronBombs = 15 'How many little bombs Cauldron Box includes
    CONST ClusterBombs = 5   'How many little bombs Cluster launches
    CONST DrugMode = Never   'Alternative style, especially with Cauldron

    CONST PromptLoad = True  'Show LoadingMessage
      CONST LoadingMessage = " Wait..."



  'Now, there shouldn't be anything interesting down there.
  'So press [F5] to play.


TYPE Launch
    x AS INTEGER
    Delay AS INTEGER
    Specials AS INTEGER
END TYPE

TYPE Object
    x AS SINGLE
    y AS SINGLE
    Hor AS SINGLE
    Ver AS SINGLE
    Clr AS INTEGER
    Visible AS INTEGER
    SpawnFlag AS INTEGER
    Specials AS INTEGER
END TYPE

    CONST Blood = -3
    CONST Heavy = -2
    CONST Illusion = -1
    CONST Normal = 0
    CONST Tiny = 1
    CONST Cluster = 2
    CONST Pops = 3
    CONST PopChild = 4

    CONST Colors = 4

DIM SHARED SndCount AS INTEGER, SndDelay 'Sound counters
DIM SHARED Human(1 TO 11) AS LONG, Dead AS INTEGER, Health AS SINGLE
DIM SHARED Mx AS INTEGER, MH AS INTEGER, LastMX AS INTEGER, LastMH AS INTEGER
DIM SHARED My AS SINGLE, lastMY AS INTEGER, MV AS SINGLE

    DIM SHARED Spark(0 TO 2729) AS Object 'Spark can also be a rocket
    DIM SHARED Launch(0 TO 50) AS Launch 'This launches a rocket
    DIM SHARED ShoutDelay AS INTEGER, ShoutX AS INTEGER
    DIM SHARED iCount AS LONG, Atmosphere AS SINGLE, Fuel AS SINGLE

Initialize
Demo

SUB Demo

DO

    COLOR 255: LOCATE 1: PRINT "FWork Ctl v1.2"
    PRINT "Health" + STR$(Health) + "%  "

  IF Dead = Bullshit THEN Atmosphere = Atmosphere - .5
  Range Health
  Range Atmosphere
  Range Fuel

   'Draw indicators
      FOR y = 3 TO 6: LINE (1, y * 7 - 2)-(66, y * 7 - 2), 20: LINE (1, y * 7 - 2)-(66, y * 7), 40, B: NEXT
      LINE (Health / 100 * 63 + 2, 20)-(65, 20), 0: FOR i = 0 TO Health / 100 * 63: PSET (2 + i, 20), i + 126: NEXT i
      LINE (Atmosphere / 100 * 63 + 2, 27)-(65, 27), 0: FOR i = 0 TO Atmosphere / 100 * 63: PSET (2 + i, 27), i + 190: NEXT i
      LINE (iCount / UBOUND(Spark) * 63 + 2, 34)-(65, 34), 0: FOR i = 0 TO iCount / UBOUND(Spark) * 63: PSET (2 + i, 34), i: NEXT i
      LINE (Fuel / 100 * 63 + 2, 41)-(65, 41), 0: FOR i = 0 TO Fuel / 100 * 63: PSET (2 + i, 41), i + 64: NEXT i

    IF SndDelay > 0 THEN SndDelay = SndDelay - 1
    IF SndDelay = 0 AND SndCount > 0 AND Sounds = True THEN SndCount = SndCount - 1: PLAY "MBL64<<<<cp64>>>>"

    IF ShoutDelay > 0 THEN ShoutDelay = ShoutDelay - 1
    IF ShoutDelay = 40 AND ShoutX = 0 THEN
        ShoutX = Mx / 8
        IF ShoutX < 1 THEN ShoutX = 1
        IF ShoutX > 37 THEN ShoutX = 37
    END IF
    IF ShoutX > 0 AND Dead = Bullshit THEN COLOR ShoutDelay * 1.5: LOCATE 23, ShoutX: PRINT "WOW!"
    IF ShoutDelay = 1 AND ShoutX > 0 THEN LOCATE 23, ShoutX: PRINT "    ": ShoutX = 0

    FOR i = 0 TO UBOUND(Launch)
    IF Launch(i).Delay > 0 THEN
        Spark = Bullshit
        SELECT CASE Launch(i).Specials
            CASE Tiny
                IF Launch(i).Delay / 9 = INT(Launch(i).Delay / 9) THEN Spark = True
            CASE Cluster
                NewSpark INT(Launch(i).x), 199, (RND - .5) / 5, -RND / 3, 63, 64, Illusion
            CASE Normal: Spark = True
        END SELECT
        IF Spark = True THEN NewSpark INT(Launch(i).x), 199, RND - .5, -RND * 1, 40, 64, Illusion

      'Launch rocket
        IF Launch(i).Delay = 1 THEN
            FOR CountDown = 1 TO 3: Explode INT(Launch(i).x), 199, 0, 0, -.2, 1: NEXT
            NewSpark INT(Launch(i).x), 199, RND * 2 - 1, -RND - 8, 190, -RND * 30 - 30, INT(Launch(i).Specials)
        END IF

      'Dud bombs 1:120
      '  IF INT(RND * 120) = 0 THEN Launch(i).Delay = 1

        Launch(i).Delay = Launch(i).Delay - 1
    END IF
    NEXT

    IF Dead = True THEN
        LOCATE 13, 15: PRINT "Game over!": FOR CountDown = 1 TO 10
        NewSpark RND * 30 + 112, 98, -RND + .5, -RND + .5, 63, 0, Illusion
        NewSpark RND * 37 + 152, 98, -RND + .5, -RND + .5, 63, 0, Illusion: NEXT
    END IF
    IF Health <= 0 AND Dead = Bullshit THEN
        FOR CountDown = 1 TO BloodAmount / 100 + 1: Explode INT(Mx + 2), My + CountDown, INT(MH), 0, BloodAmount / 500, 0: NEXT
        Dead = True: MH = 0: Health = 0
        LINE (0, 192)-(319, 199), 0, BF
    END IF

    IF Dead = Bullshit THEN
        IF Mx <> LastMX OR My <> lastMY THEN LINE (LastMX, lastMY)-(LastMX + 4, lastMY + 7), 0, BF
        LastMX = Mx
        lastMY = My
        IF My + MV < 0 AND MV < 5 OR My + MV > 192 AND MV > 2.5 THEN Hurt ABS(MV)
        Mx = Mx + MH
        My = My + MV
        IF My <= 0 THEN My = 0: MV = 0
        IF My >= 192 THEN My = 192: MV = 0
        MV = MV + .5
        IF Mx < 0 THEN Mx = 0: MH = 0
        IF Mx > 314 THEN Mx = 314: MH = 0
        PUT (Mx, My), Human, PSET
    END IF: IF MH <> 0 THEN LastMH = MH

    Sparks

    IF Dead = Bullshit AND My = 192 THEN ShotAbl = True ELSE ShotAbl = Bullshit
    SELECT CASE UCASE$(INKEY$)
        CASE CHR$(0) + "K": IF Dead = Bullshit THEN MH = MH - 1
        CASE CHR$(0) + "M": IF Dead = Bullshit THEN MH = MH + 1
        CASE CHR$(0) + "H"
            IF Dead = Bullshit THEN
                IF My = 192 OR Fuel > 0 THEN MV = MV - 3
                IF Fuel > 0 THEN Fuel = Fuel - 2: FOR CountDown = 1 TO 5: NewSpark INT(Mx + 2), INT(My + 2), RND - .5, RND * 2, 30, 63, Illusion: NEXT
            END IF
        CASE CHR$(0) + "P": IF Dead = Bullshit AND My = 192 THEN FOR CountDown = 1 TO ABS(MH) * 3 - 3: NewSpark INT(Mx + 2), 199, RND * MH, -RND / 2, 30, 64, Illusion: NEXT: MH = 0
        CASE CHR$(0) + "S" 'Clean skies
            ShoutDelay = 1
            FOR i = LBOUND(Spark) TO UBOUND(Spark): PSET (Spark(i).x, Spark(i).y), 0: Hide INT(i): NEXT
            FOR i = LBOUND(Launch) TO UBOUND(Launch): Launch(i).Delay = 0: NEXT
        CASE CHR$(0) + "O": Health = 0
        CASE CHR$(27): END
        CASE "0":      IF ShotAbl = True THEN NewSpark INT(Mx + 2) + (SGN(LastMH) * 2), 192, SGN(LastMH) * 2, -1, RND * 50 + 70, 0, Pops
        CASE " ":      IF ShotAbl = True THEN FOR CountDown = 1 TO CauldronBombs: SetLaunch Mx + 2, RND * (CauldronBombs * 9) + 20, Tiny: NEXT
        CASE CHR$(8):  IF ShotAbl = True THEN SetLaunch Mx + 2, RND * 200 + 50, Cluster
        CASE CHR$(13): IF ShotAbl = True THEN SetLaunch Mx + 2, RND * 60 + 20, Normal
        CASE "Q":      IF ShotAbl = True THEN FOR f = 1 TO 63: NewSpark INT(f), 20, 0, 0, 63 - f, 189, Illusion: NEXT
    END SELECT
LOOP
END SUB

DEFDBL A-Z
SUB Explode (x, y, Horizontal, Vertical, BYVAL Size, ColorFlag AS INTEGER)
IF PromptLoad = True THEN LOCATE 23: PRINT LoadingMessage
SndCount = ABS(Size) + 1

 IF Size > 2.5 THEN ShoutDelay = 55 '"WOW!" -text
 IF Dead = Bullshit THEN Atmosphere = Atmosphere + (ABS(Size) * 5)

 'Set bright background
    IF Size > 1 THEN Br = Size * 2 + 3
    OUT &H3C8, 0: OUT &H3C9, Br: OUT &H3C9, Br: OUT &H3C9, Br

 MaxCounter = ABS(Size) * 150
 Size = Size * (Radius / 100)
    FOR CountDown = 1 TO MaxCounter
            Ver = -ABS(Size) + (RND * ABS(Size) * 2)
            Hor = -ABS(Size) + (RND * ABS(Size) * 2)
            H = Hor / Ver * Hor
            Ver = Ver / Hor * Ver
            Hor = H
        Style = Normal
        IF Size < 0 THEN Style = Illusion
        IF ABS(Ver) < ABS(Size) * 1.3 AND ABS(Hor) < ABS(Size) * 1.3 THEN NewSpark x, y, Hor + Horizontal, Ver + Vertical, 50 + (RND * 13), ColorFlag * 63, Style
    IF PromptLoad = True THEN LINE (0, 188)-(CountDown / MaxCounter * 319, 189), CountDown / MaxCounter * 63, BF
    NEXT
    IF PromptLoad = True THEN COLOR 0: LOCATE 23: PRINT SPACE$(LEN(LoadingMessage)): LINE (0, 188)-(319, 189), , BF
    PALETTE 0, 0

END SUB

DEFSNG A-Z
SUB Hide (Index AS DOUBLE)
    IF Spark(Index).Visible = True THEN Spark(Index).Visible = Bullshit: iCount = iCount - 1
END SUB

SUB Hurt (Damage AS INTEGER)

 Health = Health - Damage
 FOR CountDown = 1 TO Damage * (BloodAmount / 200): NewSpark Mx + 2, My + 8, RND - .5, -RND - 1, RND * 30 + 20, 0, Blood: NEXT

END SUB

SUB Initialize

    SCREEN 13
    PALETTE 255, 63: COLOR 255: PRINT "Initializing colors, please wait..."
    FOR i = 0 TO 2: COLOR i * 62 + 63: PALETTE i * 62 + 63, 0: PRINT "  Û Sample Û"; : NEXT

  'Red
    FOR i = 0 TO 63: PALETTE i, i: NEXT
  'Yellow
    FOR i = 0 TO 63: PALETTE i + 64, i * 257: NEXT
  'Green
    FOR i = 0 TO 63: PALETTE i + 126, i * 256: NEXT
  'Light blue
    FOR i = 0 TO 63: PALETTE i + 190, i * 256 * 257: NEXT

  x = 10: y = 100
  LINE (x - 1, y + 1)-(x + 1, y + 4), 17, B
  CIRCLE (x, y), 1, 90
  PSET (x, y), 99
  LINE (x - 2, y + 2)-(x + 2, y + 2), 87
  LINE (x - 1, y + 2)-(x + 1, y + 2), 40
  LINE (x, y + 3)-(x, y + 4), 40
  LINE (x - 1, y + 5)-(x - 1, y + 6), 40
  LINE (x + 1, y + 5)-(x + 1, y + 6), 40
  GET (x - 2, y - 1)-(x + 2, y + 6), Human

  LastMH = 1
  Mx = 159
  My = 192
  Health = 100
  Fuel = 100

RANDOMIZE TIMER
COLOR 255: CLS
    IF BloodAmount > 500 THEN
        PRINT "Hmm, interesting..."
        PRINT : PRINT "Blood amount is set to " + LTRIM$(STR$(BloodAmount)) + "%."
        PRINT "That's quite lot, especially when"
        PRINT "player dies. But I have worn you..."
        LOCATE 22: PRINT "Press any key to continue..."
        DO: LOOP UNTIL INKEY$ <> "": CLS
    END IF
END SUB

DEFDBL A-Z
SUB NewSpark (x, y, Hor, Ver, Clr, SpawnFlag, Specials)

 'This makes impressive noise :)
    'OPEN "~None.abc" FOR APPEND AS #1: CLOSE #1: KILL "~None.abc"

    FOR i = 0 TO UBOUND(Spark)
        IF Spark(i).Visible = Bullshit THEN
            Spark(i).x = x: Spark(i).y = y
            Spark(i).Hor = Hor: Spark(i).Ver = Ver
            Spark(i).Clr = Clr: Spark(i).SpawnFlag = SpawnFlag
            Spark(i).Specials = Specials
            Spark(i).Visible = True
            iCount = iCount + 1
            EXIT SUB
        END IF
    NEXT
END SUB

SUB Pause (DelayTime)

 StartTime = TIMER
 DO: ThisTime = TIMER: LOOP UNTIL ThisTime - StartTime >= DelayTime OR ThisTime < StartTime

END SUB

DEFSNG A-Z
SUB Range (Variable AS SINGLE)

 IF Variable < 0 THEN Variable = 0
 IF Variable > 100 THEN Variable = 100

END SUB

SUB SetLaunch (x AS INTEGER, Delay AS INTEGER, Specials AS INTEGER)

    FOR i = 0 TO UBOUND(Launch)
        IF Launch(i).Delay = 0 THEN Launch(i).x = x: Launch(i).Delay = Delay: Launch(i).Specials = Specials: EXIT FOR
    NEXT: MH = LastMH: MV = -2

END SUB

SUB Sparks
    FOR i = 0 TO UBOUND(Spark)
    IF Spark(i).Visible = True THEN

        x = Spark(i).x: y = Spark(i).y
        PSET (x, y), 0

        Spark(i).x = x + Spark(i).Hor
        IF Spark(i).Specials = Normal THEN Spark(i).x = Spark(i).x - (RND * 2) + 1
        IF DrugMode = True AND Spark(i).SpawnFlag < 0 THEN Spark(i).Hor = Spark(i).Hor - (RND * 2) + 1
        Spark(i).y = y + Spark(i).Ver
        Spark(i).Ver = Spark(i).Ver + ABS(Spark(i).Hor / 30)
        IF Spark(i).Specials = Heavy OR Spark(i).Specials = Blood THEN Spark(i).Ver = Spark(i).Ver + .1
        x = Spark(i).x: y = Spark(i).y
        IF y > 200 AND Spark(i).Specials = Blood THEN Hide INT(i)

        IF Spark(i).Specials = Pops THEN
            IF y > 198 THEN Spark(i).Ver = -Spark(i).Ver / 1.5: Spark(i).y = 198
            Spark(i).Ver = Spark(i).Ver + .3
            SndCount = 1
            Spark(i).Hor = (ABS(Spark(i).Hor) - .02) * SGN(Spark(i).Hor)
            FOR CountDown = 1 TO 3
                NewSpark INT(x), INT(y), RND - .5 + Spark(i).Hor, RND - .5 + Spark(i).Ver, 60, 64, PopChild
            NEXT
        END IF

      'Hit player
        IF x >= Mx - 1 AND x <= Mx + 5 AND y >= My - 1 AND y <= My + 8 AND Dead = Bullshit AND NOT Spark(i).Specials <= Illusion THEN
            IF Spark(i).SpawnFlag < 0 THEN Hurt INT(Health) ELSE Hide INT(i): Hurt 1
        END IF

        IF Spark(i).Clr <= 0 THEN Hide INT(i): GOTO NextSpark

        PSET (x, y), ABS(Spark(i).Clr) + ABS(Spark(i).SpawnFlag)

        IF Spark(i).SpawnFlag >= 0 THEN
            Speed = FadingSpeed
            IF Spark(i).Specials = Normal OR Spark(i).Specials = Illusion THEN n = Speed
            IF Spark(i).Specials = PopChild THEN n = Speed * INT(RND * 6)
            IF Spark(i).Specials = Pops THEN n = 1
            IF n >= Speed THEN n = Speed ELSE n = 1
            IF Spark(i).Specials = Blood THEN n = 0
            Spark(i).Clr = Spark(i).Clr - n
        ELSE
            Spark(i).Ver = Spark(i).Ver + .2
            Spark(i).SpawnFlag = Spark(i).SpawnFlag + 1
            f = 0
            SELECT CASE Spark(i).Specials
                CASE Tiny: IF INT(RND * 2) = 0 THEN f = 1
                CASE Cluster: f = 2
                CASE ELSE: f = 1
            END SELECT
            FOR CountDown = 1 TO f: NewSpark INT(x), INT(y), RND - .5 - Spark(i).Hor, -Spark(i).Ver / 2, 33, 64, Illusion: NEXT
            IF NOT Spark(i).Specials = Tiny AND Sounds = True THEN SOUND y + 750, .1
            IF Spark(i).SpawnFlag = 0 OR Spark(i).y > 210 THEN
                DIM Size AS DOUBLE
                Hide INT(i)
'*** EXPLOSION ***
                SELECT CASE Spark(i).Specials
                    CASE Tiny: Count = 1: Size = RND / 5 + .4
                    CASE Cluster
                        Size = 1.5: Count = 3
                        FOR CountDown = 1 TO ClusterBombs
                            NewSpark INT(x), INT(y), RND * 4 - 2, -RND * 3 - 2, 60, -RND * 10 - 20, Tiny
                        NEXT
                    CASE ELSE: Count = 1: Size = RND * 3 + 1
                END SELECT
                Clr = RND * Colors
                FOR CountDown = 1 TO Count
                    Explode INT(x), INT(y), Spark(i).Hor / 3, Spark(i).Ver / 3, Size * CountDown, INT(Clr)
                NEXT
            END IF
        END IF
    END IF
NextSpark:
    NEXT

    Pause FrameDelay

END SUB

KimmoKM [14.03.2004 12:36:33]

#

Tämähän on hieno!

Gwaur [14.03.2004 13:20:57]

#

Binaryyyy

rndprogy [14.03.2004 13:33:50]

#

Älä aina vaadi sitä binaryas. Vaan hanki qb. Ja tuo toimiikin vain QB 7.1:ssä

T.M. [14.03.2004 14:18:11]

#

En saanu toimii, valitti jotai errorii:

SUB Explode (x, y, Horizontal, Vertical, BYVAL Size, ColorFlag AS INTEGER)

...tossa BYVAL kohdassa.

Gaxx [14.03.2004 14:26:01]

#

Yritin kans vääntää qb:llä ilotulitusta mut ei siitä mitään tullu. Toiseks mää en olis ikä maailmassa pystyny kuvittelemaan et siitä oli tullu noi hiano. Tosi mahtava!

Gaxx [14.03.2004 14:28:01]

#

Siis: en OLISI pystynyt ikä maailmassa kuvittelemaa...

rndprogy [14.03.2004 14:28:08]

#

T.M. Kuten jo sanoin TOIMII VAIN QuickBasic 7.1:SSÄ!!!!!!!!

mamaze [14.03.2004 20:52:03]

#

ei toiminu siinäkää...:@

rndprogy [14.03.2004 21:02:02]

#

ET VAIN OSAA! :D :P

Puhveli [15.03.2004 10:14:59]

#

Ei muuten meidän koulun koneissa riittäny DOSmuisti lataamaan tota ohjelmaa :D

sooda [15.03.2004 10:17:07]

#

Ei muuten munkaan koulussa :D kas miksköhän, ei ainakaan varmaan siksi että ollaan samassa koulussa :D
nt-pohjasien wintoosien dossi on niin fake että niissä on tosivähän muistia, ja qb:tä käytettäessä pirun vähän. onneksi ohjelmista voi tehdä monta motuulia ja ajaa sen sitten sillä tavalla :P

hunajavohveli [16.03.2004 15:11:48]

#

Erinomainen esimerkki TYPE sekä myös paletin käytöstä. Oletin pitkästä koodista päätellen jotain vähän erikoisempaa, mutta kyllä tämä ihan hieno on. Arvelen vain, että sen olisi voinut toteuttaa lyhyemmälläkin koodilla.

lainaus:

no more pixels appaears

Tuon tulisi olla "appear", monikossa ei tule ässää. No niin pilkunviilausta taas kerran, kyllähän sinä jo ilmoititkin, että kirjoitusvirheitä on. Mitäpä minä niitä havainnollistamaan.

hunajavohveli [16.03.2004 15:15:39]

#

Jaahas lainaus toimii näemmä kuitenkin vaikkei Lainaa-linkkiä olekaan.
Niin ja vielä tuosta koodista. Systeemi on hyvin samantapainen kuin monissa mitä olen itsekin tehnyt joihinkin Wormsin tapaisissa 2d-räiskintöihin, missä lentää kipinöitä, kun pommit osuvat maahan, jos otetaan huomioon pisteiden liikuttaminen ja muu, ainakin jos koodista oikein päättelin. Nuo monipuoliset pommit tuovat lisäväriä demoon.

Gwaur [17.03.2004 14:21:16]

#

Tehkää joku tästä exe

sooda [18.03.2004 16:59:46]

#

Vasta nyt pääsin katsomaan HIEANO!!!, ja ei voi tehdä exeä koska exetettäessä Initializen kohdalla sanoo "data memory owerflow"

temu92 [22.03.2005 17:09:44]

#

lainaus:

En saanu toimii, valitti jotai errorii:

SUB Explode (x, y, Horizontal, Vertical, BYVAL Size, ColorFlag AS INTEGER)

...tossa BYVAL kohdassa.

sama juttu

temu92 [22.03.2005 17:27:32]

#

aha...

latasin sen 7.1

toimiiiiiiiiiiiiiiiiiiiiiii....

vähän hyvä

Puhveli [04.05.2005 19:32:25]

#

Hmm, tästä vois tosiaan tehdä binaryn... Mutta itelläni ei riitä muisti kääntämiseen, että jos joku on viritellyt yltiömuistavat Dosasetukset itselleen niin voisi kääntää jos tykkäisi?


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta