Tyhmät kysymykset (I/2009)

Voit pyytää apua ohjelmointiongelmiin täältä.
Locked
Suffer
Newcomer
Posts: 7
Joined: Sun Nov 11, 2007 8:35 pm

Re: Tyhmät kysymykset

Post by Suffer »

Missä kohti kannattaa typellä tehdyt luodit ja vihut deletetoida?
Mulla nimittäin iskee MAVi kun deletetoin vihun luodin ja vihun törmäyksessä..
temu92
Web Developer
Web Developer
Posts: 1226
Joined: Mon Aug 27, 2007 9:56 pm
Location: Gamindustri
Contact:

Re: Tyhmät kysymykset

Post by temu92 »

Luodit pitää aina poistaa ihan lopussa, voit vaikka tehdä luodelle oman ylimääräisen fieldin jossa kerrotaan onko luoti kuollut eli siis

Code: Select all

loop
  jos luoti_törmää
    luoti\kuollut = true
  endjos
  ....
  muuta juttua luodin kanssa
  ....
  jos luoti\kuollut
    poista luoti
  endjos
endloop
AllAh -Guest

Re: Tyhmät kysymykset

Post by AllAh -Guest »

Onko mahdollista saada se wanhoilta foorumeilta löytyvä Ragdolli kävelemään kunnollisesti?
Sillai et se silti olisi sellainen lötkö,mut että se voisi jotenkuten kävellä.

Ja voinko tehdä peliini sillain että ragdollin kättä ohjattaisiin hiirellä ja kun painan tiettyä näppäintä niin se vaihtaisi ohjauksen toiselle jalalle/kädelle?Jos niin miten?
Olen tekemässä tikku-ukko-roolitoimintapeliä.Tosin ensin pitäisi moottori saada jotenkuten toimimaan.
Ja saahan sen törmäämään niihin pisteiden välisiin viivoihin?
Suffer
Newcomer
Posts: 7
Joined: Sun Nov 11, 2007 8:35 pm

Re: Tyhmät kysymykset

Post by Suffer »

Et tainut nyt ymmärtää oikein.. (tai sitten vika on minussa)

Siis jos liitän tuon loppuun nii MAVaa..

Code: Select all

If Objectsoverlap (vihu\obj,luoti\obj)  Then
DeleteObject vihu\obj
Delete vihu
EndIf 
User avatar
TheDuck
Devoted Member
Posts: 632
Joined: Sun Aug 26, 2007 3:51 pm
Location: C:\Program Files\Tuusula\

Re: Tyhmät kysymykset

Post by TheDuck »

Suffer wrote:Et tainut nyt ymmärtää oikein.. (tai sitten vika on minussa)

Siis jos liitän tuon loppuun nii MAVaa..

Code: Select all

If Objectsoverlap (vihu\obj,luoti\obj)  Then
DeleteObject vihu\obj
Delete vihu
EndIf 

Code: Select all

If Objectsoverlap (vihu\obj,luoti\obj)  Then
DeleteObject vihu\obj
Delete vihu
Exit
EndIf 
^^
iTKEVAnAKKI
Advanced Member
Posts: 335
Joined: Tue Aug 28, 2007 3:55 pm
Location: Siellä jossain

Re: Tyhmät kysymykset

Post by iTKEVAnAKKI »

En millään osaa tehdä funktiota joka muuntaisi esim. 1000->1,000 tai 1000000->1,000,000 jne :D Eli voisiko joku auttaa?

EDIT: Löysin sellaisen cbkksta vahingossa, se oli merkkijonoissa kun taas etsin sitä matematiikasta :P http://cbkk.systec.fi/koodi.php?id=47
Projektit:
Joku projekti meneillään... Mitähän siitäkin tulee ;)
Harakka
Advanced Member
Posts: 430
Joined: Mon Aug 27, 2007 9:08 pm
Location: Salo
Contact:

Re: Tyhmät kysymykset

Post by Harakka »

Tässäpä olisi oma viritelmäni.

Code: Select all

Repeat
    vastaus$ = Input("Numero? ")
    Text 50,50,siistiLuku(Str(vastaus$))
    DrawScreen
Forever

Function siistiLuku(luku)
    str_luku$ = Str(luku)
    For i = 1 To Len(str_luku)
        newStr$ = newStr$ + Mid(str_luku,i,1)
        If (i Mod 3) = 0 And i < Len(str_luku) Then newStr$ + ","
    Next i
    Return newStr$
End Function
Näköjään myöhästyin vähän, mutta tämäpähän on lyhyempi kuin cbkk:n vastaava. :P Nopeudesta en tiedä.
Peli piirtokomennoilla - voittaja, Virtuaalilemmikkipeli - voittaja,
Sukellusvenepeli - voittaja, Paras tileset - voittaja
Vaihtuva päähenkilö - voittaja, Autopeli - voittaja sekä
Hiirellä ohjattava peli - voittaja B)
rpg fani
Newcomer
Posts: 2
Joined: Wed Nov 21, 2007 7:29 pm

Re: Tyhmät kysymykset

Post by rpg fani »

mite saan cloonattuu tyypin?????auttakaa.
TheFish
Developer
Developer
Posts: 477
Joined: Mon Aug 27, 2007 9:28 pm
Location: Joensuu

Re: Tyhmät kysymykset

Post by TheFish »

rpg fani wrote:mite saan cloonattuu tyypin?????auttakaa.
Siis tarkoitatko, että miten saa kloonattua jonkin objektin

Code: Select all

klooni=cloneobject (obj)
vai että miten saa kloonattua typen (en kyllä keksi yhtään syytä/keinoa kloonata typeä)?
Vai tarkoititko typessä olevan objektin kloonausta?

Code: Select all

klooni=cloneobject (tyyppi\obj)
CoolBasic henkilökuntaa
Kehittäjä
Kerosiinipelle
Newcomer
Posts: 5
Joined: Sat Nov 17, 2007 4:18 pm

Re: Tyhmät kysymykset

Post by Kerosiinipelle »

Kuinka tehdä ajastin (vaikka kuvan yläreunaan) ja että se sitten tallentaa tulokset tiedostoon?
Suffer
Newcomer
Posts: 7
Joined: Sun Nov 11, 2007 8:35 pm

Re: Tyhmät kysymykset

Post by Suffer »

Mites ois järkevin tapa laittaa esim. vihollinen liikkumaan neliöö tai ympyrää?
Harakka
Advanced Member
Posts: 430
Joined: Mon Aug 27, 2007 9:08 pm
Location: Salo
Contact:

Re: Tyhmät kysymykset

Post by Harakka »

Ympyrä on helppo.

Code: Select all

vihu = LoadObject("media/guy.bmp",90)
Repeat
  MoveObject vihu,3
  TurnObject vihu,2
  DrawScreen
Forever
Editoin tähän vaikka kohta neliökoodin.

EDIT: Neliö:

Code: Select all

vihu = LoadObject("media/guy.bmp",90)
Repeat
  MoveObject vihu,3
  If Timer() > vihuaika + 500 Then
    vihuaika = Timer()
    kaantoframet = 9
  EndIf

  If kaantoframet Then
    TurnObject vihu,10
    kaantoframet -1
  EndIf
  
  DrawScreen
Forever
Peli piirtokomennoilla - voittaja, Virtuaalilemmikkipeli - voittaja,
Sukellusvenepeli - voittaja, Paras tileset - voittaja
Vaihtuva päähenkilö - voittaja, Autopeli - voittaja sekä
Hiirellä ohjattava peli - voittaja B)
lokkis
Newcomer
Posts: 1
Joined: Fri Nov 30, 2007 5:03 pm

Re: Tyhmät kysymykset

Post by lokkis »

Sellanen homma että coolbasicin learning center ei toimi. Latasin aikasemmin tänään coolbasicin mutta learning center ei toimi. Kun yritän aukaista esim. ykköstä, siihen tulee että can´t open 01.cb. Mikä neuvoksi?
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Tyhmät kysymykset

Post by koodaaja »

lokkis wrote:Sellanen homma että coolbasicin learning center ei toimi. Latasin aikasemmin tänään coolbasicin mutta learning center ei toimi. Kun yritän aukaista esim. ykköstä, siihen tulee että can´t open 01.cb. Mikä neuvoksi?
Uudelleenasennus toiminee. Sehän siis ei löydä oppitunnin tiedostoa kansiosta, jossa sen pitäisi olla.
joku

Re: Tyhmät kysymykset

Post by joku »

mikä on oletus taajuutena toistettavassa äänessä, kun en löytänyt minkään näköistä functiota :(
Harakka
Advanced Member
Posts: 430
Joined: Mon Aug 27, 2007 9:08 pm
Location: Salo
Contact:

Re: Tyhmät kysymykset

Post by Harakka »

Riippuu äänen näytteenottotaajuudesta. Yleensä 44100, joskus sama jaettuna kahdella tai neljällä. Selviää kokeilemalla.
Peli piirtokomennoilla - voittaja, Virtuaalilemmikkipeli - voittaja,
Sukellusvenepeli - voittaja, Paras tileset - voittaja
Vaihtuva päähenkilö - voittaja, Autopeli - voittaja sekä
Hiirellä ohjattava peli - voittaja B)
koodaaja
Moderator
Moderator
Posts: 1583
Joined: Mon Aug 27, 2007 11:24 pm
Location: Otaniemi - Mikkeli -pendelöinti

Re: Tyhmät kysymykset

Post by koodaaja »

Kerosiinipelle wrote:Kuinka tehdä ajastin (vaikka kuvan yläreunaan) ja että se sitten tallentaa tulokset tiedostoon?
Ajastin on varsin yksinkertainen. Pistät vain muuttujan kasvamaan ajastimen mukana. ( huomaa, että CB:n Timer() palauttaa ajan koneen eikä ohjelman käynnistyksestä, jolloin alkuaika pitää ottaa talteen ja vähentää se nykyisestä ) Aww, enpäs osannutkaan selittää järkevästi. No koodina sitten:

Code: Select all

alkuaika = Timer() //tästä ajanotto alkaa
Repeat
    aika = Timer()-alkuaika //vähennetään aika, jonka sisäinen ajastin jo alussa oli
    Text 10, 10, "Aika:"+aika
    Drawscreen
Forever
Ja tallennus on käytännössä yhtä helppoa. Sanotaan, että aika on muuttujassa "aika" ja tekijän nimi muuttujassa "nimi$". ( loogiset nimet helpottavat elämää huomattavasti ;D )

Code: Select all

file = OpenToEdit("Highscore.txt")//avataan highscore-tiedosto. Jos moista ei ole, niin tämä luo sen. (voisi toki olla vaikka .hscr, jos haluat)

If Not EOF(file)//ollaanko tiedoston lopussa. jos se luotiin juuri, ollaan valmiiksi lopussa
    vaika = ReadInt(file)//luetaan wanha ennätys ja sen haltija
    vnimi$ = ReadString(file)
EndIf

If aika<vaika//jos aikaa kului vähemmän, kirjoitettava aika on juuri tehty aika
    uaika = aika
    unimi = nimi
Else
    uaika = vaika
    unimi = vnimi
EndIf

WriteInt file, uaika
WriteString file, unimi

CloseFile File
Ja tämän toimivuudesta en mene takuuseen, kun en muista, pitääkö wanhat nimet kirjoittaa uudestaan jne. ( en ole aikoihin tiedostoilla leikkinyt )

OffTopic
Harakka: älä nyt masennu, mutta tuo lukujensiistimisfunkkarisi ei oikein toimi. Kun tuohon kirjoitti 1000 se antoi vastauksena 100,0 ja kun vielä lisäili nollia, se alkoi lisäillä sinne ihan muita lukuja kuin ykkösiä ja nollia o:
Guest

Re: Tyhmät kysymykset

Post by Guest »

Miten saisi tähän CoolBasicista löytyvään esimerkkiin Pausen?
Ettei se aloita, joka kerta kappaletta alusta.

Code: Select all

AddText "Hit SPACE to play/stop a music"

playing=OFF

Repeat

    'user controls
    If KeyHit(cbkeyspace) Then
        playing=Not playing
        If playing Then
            music=PlaySound("Media\SK_Battle2.mp3")
        Else
            StopSound music
        EndIf
    EndIf

    
    'print a funny text
    If SoundPlaying(music) Then
        Text 40,40,"Music is playing :)"
    Else
        Text 40,40,"Music is not playing :("
        playing=OFF
    EndIf
        
    DrawScreen
temu92
Web Developer
Web Developer
Posts: 1226
Joined: Mon Aug 27, 2007 9:56 pm
Location: Gamindustri
Contact:

Re: Tyhmät kysymykset

Post by temu92 »

Valitettavasti ei ole olemassa paussia

Tosin avain tähä olisi DLL
iTKEVAnAKKI
Advanced Member
Posts: 335
Joined: Tue Aug 28, 2007 3:55 pm
Location: Siellä jossain

Re: Tyhmät kysymykset

Post by iTKEVAnAKKI »

Code: Select all

  For y=1 To 20
    If näytettävät(y)<>"" Then
      If nappi(0,20*y,näytettävät(y)) Then
        valitturata$="Media\"+Mid(näytettävät(y),4)
        Goto peli
      EndIf
    EndIf
  Next y  
Tarkotus oli, että jos näytettävät on vain tyhjä niin ei tehdä nappia, mutta nyt se tekee kuitenkin... Eli miten tuo pitäisi laittaa?

EDIT: anteeksi huono selitys, mutta toivottavasti ymmärrätte.
Projektit:
Joku projekti meneillään... Mitähän siitäkin tulee ;)
Locked