Mahdollista käyttää kaikkia ASCII merkkejä Coolbasicilla?

Voit pyytää apua ohjelmointiongelmiin täältä.
Post Reply
Koodiapina
Forum Veteran
Posts: 2396
Joined: Tue Aug 28, 2007 4:20 pm

Mahdollista käyttää kaikkia ASCII merkkejä Coolbasicilla?

Post by Koodiapina »

Mahdollista käyttää kaikkia ASCII merkkejä Coolbasicilla? Jos on, niin miten?
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Mahdollista käyttää kaikkia ASCII merkkejä Coolbasicilla?

Post by koodaaja »

Grandi wrote:Mahdollista käyttää kaikkia ASCII merkkejä Coolbasicilla? Jos on, niin miten?

Code: Select all

Chr( ascii_arvo )
mikeful
Moderator
Moderator
Posts: 523
Joined: Mon Aug 27, 2007 8:36 pm
Location: Vaasa, Finalnd
Contact:

Re: Mahdollista käyttää kaikkia ASCII merkkejä Coolbasicilla?

Post by mikeful »

Merkkien näkyminen on fontista kiinni. Muistaakseni perusfontti ei osaa näyttää kovin erikoisia merkkejä.
Pelejä: Pelasta puhe, Grinder
Muuta: Blogi, Twitter
Koodiapina
Forum Veteran
Posts: 2396
Joined: Tue Aug 28, 2007 4:20 pm

Re: Mahdollista käyttää kaikkia ASCII merkkejä Coolbasicilla?

Post by Koodiapina »

mikeful wrote:Merkkien näkyminen on fontista kiinni. Muistaakseni perusfontti ei osaa näyttää kovin erikoisia merkkejä.
Mun pitäis saada toimimaan Nethackin ASCII merkkejä. Olen kokeillut muutamia fontteja, mutta tuntuu, että CoolBasic ei vain tue niitä merkkejä :(

Lisäkysymys: Jos joku saa ne toimimaan, niin miten voin laittaa niitä merkkejä tällaiseen viritelmään ilman, että joutuu pistämään +chr(99)+""+chr(242)+"" ....

Code: Select all

ASCII_Line(1,"##################",2)
    ASCII_Line(2,"#................#",2)
    ASCII_Line(3,"#...Grandi's.....#",2)
    ASCII_Line(4,"#................#",2)
    ASCII_Line(5,"##################",2)
    
    ASCII_Line(1,"###########################",1)
    ASCII_Line(2,"#.........................#",1)
    ASCII_Line(3,"#....Tilemap engine.......#",1)
    ASCII_Line(4,"#.........................#",1)
    ASCII_Line(5,"###########################",1)
tuhoojabotti
Advanced Member
Posts: 485
Joined: Tue Aug 28, 2007 3:53 pm
Location: Suomi, Finland
Contact:

Re: Mahdollista käyttää kaikkia ASCII merkkejä Coolbasicilla?

Post by tuhoojabotti »

tee functio joka lukee joka kirjaimen asciin tekstistä ja silleen...
temu92
Web Developer
Web Developer
Posts: 1226
Joined: Mon Aug 27, 2007 9:56 pm
Location: Gamindustri
Contact:

Re: Mahdollista käyttää kaikkia ASCII merkkejä Coolbasicilla?

Post by temu92 »

Code: Select all

for i=1 to len(asciistring$)
	char$=mid(asciistring$, i, 1)
next i
Looppeja voi käyttää :D
Koodiapina
Forum Veteran
Posts: 2396
Joined: Tue Aug 28, 2007 4:20 pm

Re: Mahdollista käyttää kaikkia ASCII merkkejä Coolbasicilla?

Post by Koodiapina »

temu92 wrote:Looppeja voi käyttää :D
En tiedä käsitinkö oikein, mutta on mulla loopissa se kartta. Se on vaan funktion muodossa, että on helpompi reakoida virheisiin.

Code: Select all

    Function Create_ASCII_Map(width,height,floors=1,fill$="")
        font = LoadFont("courier New",17)
        Color cbblack
        If width < 1 Or height < 1 Or floors < 1 Then
            ' Width, height and floors must be greater than zero
            MakeError "Invalid map size!"
        ElseIf Len(fill)>1 Then
            MakeError "Fill size must be 1!"
        EndIf
        width = width : height = height : floors = floors
        Dim Mark$(width,height,floors)
        Dim seen(width,height,floors)
        If fill <> "" Then
            For w=1 To width
                For h=1 To height
                    For f=1 To floors
                        mark(w,h,f) = fill
                        seen(w,h,f) = YES
                    Next f
                Next h
            Next w
        EndIf
    EndFunction
    
    
    // CREATE LINE TO ALREADY MADE MAP
    
    ' Place means, what row will be put. First row is 1 and last
    ' is that how much you have rows (height) in your map. Floor
    ' tell what floor does it. 1 is right if you have only one floor
    ' Row means what we want to but to our map to the row
    
    Function ASCII_Line(place,row$,floor=1)
        If Len(row$) > width Then
            ' Make sure that the row$ has as many character as the
            ' maps width parameter is.
            ' MakeError "Not enought characters in the row ON the Line "+place
        ElseIf place < 1 Or place > height Then
            ' Make sure you dont try put line to zero or negative
            ' index or put greater amount than the maps row-amount
            MakeError "Can't Read invalid map Line!"
        EndIf
        For wid = 1 To width
            mark(wid,place,floor) = Mid(row$,wid,1)
        Next wid
    EndFunction 
Post Reply