Page 1 of 154

Tyhmät kysymykset (I/2009)

Posted: Tue Aug 28, 2007 4:19 pm
by iTKEVAnAKKI
Eli tänne kaikki yksinkertaiset kysymykset johin et ole keksinyt ratkaisua. Mutta muistakaa, että käytätte ensin hakua!

Päätin tehdä tämänkin tänne, vaikka juuri nyt itelläni ei ollutkaan mitää kysyttävää.

Re: Tyhmät kysymykset

Posted: Wed Aug 29, 2007 4:24 pm
by jacceez''
Miten saan koodattua sellaisen toiminnon joka määrittä esim: Jos painan Q niin ukko hyppää?

Re: Tyhmät kysymykset

Posted: Wed Aug 29, 2007 4:30 pm
by -Z-
Coolbasicin oppitunti 19. Saat learning centerin esiin painamalla f8 editorinäkymässä.

Re: Tyhmät kysymykset

Posted: Thu Aug 30, 2007 7:49 pm
by koodaaja
Nyt tämmöinen enemmän tai vähemmän tyhmä kysymys; miten CB:n dll-kutsusysteemin muistipalikkajärjestelmä toimii DLL:n päässä? Eli mikä parametri sieltä tulee? Pointteri johonkin? Varmaan, mutta entä jos osa parametrimuistipalan osista on floatteja, osa chareja ja muutama intti? Tuleeko se jonain ovelana pointteritaulukkona vai?

Re: Tyhmät kysymykset

Posted: Thu Aug 30, 2007 8:22 pm
by Marcoder
koodaaja wrote:Nyt tämmöinen enemmän tai vähemmän tyhmä kysymys; miten CB:n dll-kutsusysteemin muistipalikkajärjestelmä toimii DLL:n päässä? Eli mikä parametri sieltä tulee? Pointteri johonkin? Varmaan, mutta entä jos osa parametrimuistipalan osista on floatteja, osa chareja ja muutama intti? Tuleeko se jonain ovelana pointteritaulukkona vai?
DLL:ään tulee pelkkä muistiosoite josta data alkaa. Ei siis mitään taulukoita.

Linkki joskus tekemääni tutoon jossa myös luokka jolla parametreja luetaan helposti.
http://koti.mbnet.fi/marcoder/cb/dll/

Re: Tyhmät kysymykset

Posted: Sat Sep 01, 2007 6:43 pm
by cheeshelmet.jr
Olisi kaksi kysymystä
I. kun typeen luodaan uusi jäsen onko se ensimmäinen vai viimeinen?
II. kuinka lasketaan tietyn typen jäsenten määrä??

Re: Tyhmät kysymykset

Posted: Sat Sep 01, 2007 7:49 pm
by koodaaja
cheeshelmet.jr wrote:Olisi kaksi kysymystä
I. kun typeen luodaan uusi jäsen onko se ensimmäinen vai viimeinen?
II. kuinka lasketaan tietyn typen jäsenten määrä??
I. Viimeinen
II.

Code: Select all

i = 0
For t.TYPE = Each TYPE
    i = i + 1
Next t

Re: Tyhmät kysymykset

Posted: Sun Sep 02, 2007 5:34 pm
by Guest
Miten saan levelit rpg peliin. Meinaan että en jaksaisi alkaa mitään

Code: Select all

if exp=>100 then lvl=2
if exp=>200 then lvl=3
...
Eli miten saisin että aluks täytyy saada sata exp että ukosta tulee 2 lvl seuravaks pitää saada 2 kertaa toi äskenen määrä expointteja et ukos tulee taas 1 lvl isompi JNE. Ja siis että ne exp ain nollaantuis kun tulee se uus leveli. ? Kun kyllähän se noin kin käy mitä tuossa esimerkissä näytin mutta en jaksais mihinkää sataa asti noit kirjottaa. Ja ois helpompaa tehä niin että exp määrä aina kerrotaan vaikka sillä kahella , kun sit sais niit taitojakin siihen helpommin. Kait tää on mahdollista ? :?:
Ihmeellinen toi päärynä -> :o

Re: Tyhmät kysymykset

Posted: Sun Sep 02, 2007 5:48 pm
by koodaaja
Guest wrote:Miten saan levelit rpg peliin. Meinaan että en jaksaisi alkaa mitään

Code: Select all

if exp=>100 then lvl=2
if exp=>200 then lvl=3
...
Eli miten saisin että aluks täytyy saada sata exp että ukosta tulee 2 lvl seuravaks pitää saada 2 kertaa toi äskenen määrä expointteja et ukos tulee taas 1 lvl isompi JNE. Ja siis että ne exp ain nollaantuis kun tulee se uus leveli. ? Kun kyllähän se noin kin käy mitä tuossa esimerkissä näytin mutta en jaksais mihinkää sataa asti noit kirjottaa. Ja ois helpompaa tehä niin että exp määrä aina kerrotaan vaikka sillä kahella , kun sit sais niit taitojakin siihen helpommin. Kait tää on mahdollista ? :?:
Ihmeellinen toi päärynä -> :o
Innostuinpas tekemään oikein hienon esimerkin:

Code: Select all

exp = 0
lvl = 1
exptonxt = 100

Repeat
    exp = exp + KeyDown(57)
    
    If exp >= exptonxt Then
        exptonxt = exptonxt * 2
        lvl = lvl + 1
        exp = 0
    EndIf
    
    Text 10, 10, "Ekspaa: " + exp
    Text 10, 30, "Seuraava leveli @: " + exptonxt
    Text 10, 50, "Lvl: " + lvl
    
    Color 255, 0, 0
    Box 10, 70, (Float(exp)/Float(exptonxt))*100,10, 1
    
    Color 255, 255, 255
    Box 10, 70, 100, 10, 0
    
    DrawScreen
Forever

Re: Tyhmät kysymykset

Posted: Sun Sep 02, 2007 5:49 pm
by jarvinen

Re: Tyhmät kysymykset

Posted: Sun Sep 02, 2007 5:54 pm
by Guest
Kiitti ! Just tollast tarttinkin ! Projektini on ylhäältäpäin kuvattu rpg. Muutes onkos se enää rpg jos se on ylhäältäpäin ? Olen niin kehno graafikko että en jaksa animoida

Re: Tyhmät kysymykset

Posted: Sun Sep 02, 2007 5:59 pm
by koodaaja
Guest wrote:Kiitti ! Just tollast tarttinkin ! Projektini on ylhäältäpäin kuvattu rpg. Muutes onkos se enää rpg jos se on ylhäältäpäin ? Olen niin kehno graafikko että en jaksa animoida
Tottakai se voi olla RPG vaikka ylhäältä olisikin kuvattu. Onhan ES4:Oblivionkin ekasta persoonasta kuvattu (ensisijaisesti). Ja hommaa graafikko, helpottaa elämää ( ellet ole niin ahne kuin minä, että haluat kaiken kunnian itsellesi ;D ) Ja pitäähän ne ylhäältäkuvatutkin animoida, jos haluaa hienoa jälkeä aikaan.

jarvinen: itse en käyttäisi RPG:ssä objekteja, paitsi jos se olisi ylhäältä kuvattu. Ja itse en tekisi RPG:tä yläkuvakulmasta.

Re: Tyhmät kysymykset

Posted: Sun Sep 02, 2007 7:03 pm
by Guest
Hitastaako se että on monta tyyppiä vaikka 35 ? Kun en tiedä miten tekisin . Teenkö vain monta typeä jokaisen vihun type . eli movia type, bear type reiren type graesp type jne . vai onko jotain tyyliä miten saisin ne kaikki vaikka yhteen typeen eli monitoimi type :D heh . Ja nuo nimethän on silkroad onlinesta :D Kun voin kyllä tehdä 35 typeä , mutta en tiedä hidastaako se ?

Re: Tyhmät kysymykset

Posted: Sun Sep 02, 2007 8:07 pm
by Guest
Guest wrote:Hitastaako se että on monta tyyppiä vaikka 35 ? Kun en tiedä miten tekisin . Teenkö vain monta typeä jokaisen vihun type . eli movia type, bear type reiren type graesp type jne . vai onko jotain tyyliä miten saisin ne kaikki vaikka yhteen typeen eli monitoimi type :D heh . Ja nuo nimethän on silkroad onlinesta :D Kun voin kyllä tehdä 35 typeä , mutta en tiedä hidastaako se ?
Ei ole mitään järkeä tehdä noin, kun voisit tehdä sen yhdellä typellä. Esimerkiksi näin:

Type ENEMIES
Field obj As Integer
Field name As String
Field attack As Integer
Field defence As Integer
End Type

Re: Tyhmät kysymykset

Posted: Mon Sep 03, 2007 5:29 pm
by tuhoojabotti
miksi tämä MAVittaa?

Code: Select all

päivitäammukset:
    For luoti.AMMUS = Each AMMUS
        For vihu.VIHUT=Each VIHUT
            MoveObject luoti\obj,6     
            
            //törmäystarkistus vihujen kanssa
            If ObjectsOverlap (vihu\obj,luoti\obj,2) Then
                DeleteObject luoti\obj 'poista objekti
                Delete luoti 'poista luoti kokonaan
                vihu\hp=vihu\hp-5
                If vihu\hp<0 Then 
                    DeleteObject vihu\obj
                    Delete vihu
                EndIf 
            EndIf
        

        Next vihu
    Next luoti

Return

Re: Tyhmät kysymykset

Posted: Mon Sep 03, 2007 7:02 pm
by Skapth
tuhoojabotti wrote:miksi tämä MAVittaa?
Ammuksia käsitellessä käydään kaikki viholliset läpi, jonka takia käsitellään samaa jo valmiiksi tuhottua ammusta useamman kerran, joka aiheuttaa MAV:in.
Läpikäyntijärjestys voidaan kääntää toisinpäin, jolloin tämän pitäisi ratketa.

Code: Select all

For vihu.VIHUT=Each VIHUT
	For luoti.AMMUS = Each AMMUS
	..
	next luoti
next vihu

Re: Tyhmät kysymykset

Posted: Mon Sep 03, 2007 8:33 pm
by Murskaaja

Code: Select all

     For luoti.AMMUS = Each AMMUS
          For vihu.VIHUT=Each VIHUT
               MoveObject luoti\obj,6
Tuossa oli muuten vielä sellainen virhe, että luotia liikutetaan niin monta kertaa kuin vihuja on. Eli, jos vihuja sattuu olemaan elossa 10, luoti liitää 10*6 (tai jos vihuja on 0, luoti jää leijumaan ilmaan). Luotia täytyy siis liikuttaa ennen törmäyksiä käsittelevää silmukkaa (eikä sen sisällä). Läpikäyntijärjestystä ei tarvitse muuttaa, jos poistuu silmukasta (exit) kun luoti on tuhouttu.

Korjattu versio:

Code: Select all

päivitäammukset:
     For luoti.AMMUS = Each AMMUS
          MoveObject luoti\obj,6
          For vihu.VIHUT=Each VIHUT
                //törmäystarkistus vihujen kanssa
                If ObjectsOverlap (vihu\obj,luoti\obj,2) Then
                    DeleteObject luoti\obj 'poista objekti
                    Delete luoti 'poista luoti kokonaan
                    vihu\hp=vihu\hp-5
                    If vihu\hp<0 Then
                        DeleteObject vihu\obj
                        Delete vihu
                    EndIf
                EXIT 

                EndIf
           

            Next vihu
        Next luoti

    Return

Re: Tyhmät kysymykset

Posted: Mon Sep 03, 2007 8:57 pm
by kauhu
Juuri tuollaista meinasin kin mitä tuo toinen guesti näytti eli

Code: Select all


Type ENEMIES
Field obj As Integer
Field name As String
Field attack As Integer
Field defence As Integer
End Type

mutta kun en ole pahemmin koodaillut niin voisiko joku kertoa miten merkitsen noi attack def ja noi hommat ? eli siis jos on näin

Code: Select all


Type Vidolliset
Field obj As Integer
Field nimi As String
Field attack As Integer
Field suojaus As Integer
Field hp
End Type



 For x = 0 To 10
             uusimovia.Viholliset = New(Viholliset)
             uusimovia\obj\movia\2\1 = CloneObject(mastermovia)
             PositionObject uusimovia\obj,rand(-screenwidth()/2,screenwidth()/2),rand(-screenheight()/2,screenheight()/2)

             SetupCollision uusimovia\obj,kartta,2,4,2
             SetupCollision uusimovia\obj,ukko,2,2,2
             SetupCollision Oma,uusimovia\obj,2,2,2
             uusimovia\hp=100
         Next x

tein jotai tollasta ? Niini tiiän et toi on väärin kun en oikein tajunnu niin miten toi sit pitäis tehä :roll:

Re: Tyhmät kysymykset

Posted: Mon Sep 03, 2007 9:49 pm
by koodaaja
kauhu: siellä on monta kenoviivaa, käytä vain yhtä. Eli tyyliin:

Code: Select all

Type VIHUT
    Field obj
    Field attack
    Field defence
    Field hp
End Type

For i = 0 To 9
    vihu.VIHUT = New(VIHUT)
    vihu\obj = CloneObject(mastervihu)
    Positionobject vihu\obj, x, y
    vihu\hp = 100
    vihu\attack = Rand(5,10)
    vihu\defence = Rand(5,10)
Next i
En tosin käsitä, mitä yrität saada aikaan noilla useammilla kenoviivoilla. Eli mitä tuon uusimovia\obj\movia\2\1:n olisi tarkoitus tehdä?

Re: Tyhmät kysymykset

Posted: Mon Sep 03, 2007 10:02 pm
by kauhu
se " uusimovia\obj\movia\2\1 " jäi vahingossa siihen huomasin sen vasta kun olin lähettönyt viestini, kun huomasin sen niin siitä tuli ihan samallainen koodi kun minkä laitoit tänne ainut ero oli se että kutsuin attack hyökkäyksenä ja hp terveytenä. Niin se " uusimovia\obj\movia\2\1 " en tiedä mistä se päähäni tuli , kun yritin tehdä jotai ihme homma, mutta joo noin se toimii minkä laitoit. sehän toimii ihan samallailla esim esineissä ja muissa, mutta niissä käyttäisin

Code: Select all


Type esineet
    Field obj
    Field vaikutus
End Type

luulen että, en tarvii enää muuta neuvoa , kun yks oon tajunnu et miten tehää se että jos mennää vaikka oven kohalle niin se menee siihen toiseen huoneeseen tai taloon jne , mutta mulla tulee aina mavi siinä kun koitan saada että kartta vaihtuis. se aina mavittaa :o Eli osaan että jos mennään johonkin kohtaa kartassa niin tulee näkyville joku toinen objekti tai jotai, mutta en tajuu kun aina kun se latais uuden kartan niin " TöK " " memory acces violation" se memory acces violation tulee kait siinä kun poistan sen vanhan mapin pois ja kun meen taas pois sieltä talosta niin se latais sen alunperisen mapin , mutta ei toimi :x