Tyhmät kysymykset (I/2009)

Voit pyytää apua ohjelmointiongelmiin täältä.
Locked
cheeshelmet.jr
Member
Posts: 75
Joined: Tue Aug 28, 2007 6:59 am

Re: Tyhmät kysymykset

Post by cheeshelmet.jr »

kuinka voi kirjoittaa muistipalaan järkevää tekstiä
ja salata sen??
m1c
Member
Posts: 65
Joined: Tue Aug 28, 2007 5:10 pm
Location: \o

Re: Tyhmät kysymykset

Post by m1c »

Teinpä pienen esimerkin aiheesta. Salauksen purkamiseksi täytyy siis käyttää komentoa Decrypt, ja tietysti samaa avainta kuin salatessa.

Code: Select all

sana$ = "CoolBasic" //tämä on esimerkkisanamme

muistipala = MakeMEMBlock(Len(sana$))
//Yhden merkin ascii-arvo on väliltä 0-255, ja koska 255 on suurin luku
//joka mahtuu yhteen tavuun voimme käyttää muistipalaan tallentamiseen yhtä
//tavua kirjainta kohden, eli teemme muistipalan, jonka koko tässä
//tapauksessa on 0 tavua.
 
For i = 1 To Len(sana$)//käydään sanan kaikki kirjaimet läpi
    PokeByte muistipala, i - 1, Asc(Mid(sana$, i, 1))
    //kirjoitetaan kunkin merkin ascii-arvo muistipalaan
Next i

//tehdän uusi muistipala salattua tietoa varten
salattu = MakeMEMBlock(MEMBlockSize(muistipala))
Encrypt muistipala, salattu, "avain"

tulos$ = ""
For i = 0 To Len(sana$) - 1 //käydään nyt muistipala läpi ja lisätään jokainen
    tulos$ = tulos$ + Chr(PeekByte(salattu, i)) //kirjain tulos$-muuttujaan
Next i

Text 0, 0, tulos$

DrawScreen
WaitKey 
henrik93
Newcomer
Posts: 11
Joined: Tue Aug 28, 2007 4:13 pm

Re: Tyhmät kysymykset

Post by henrik93 »

Minulla olisi tälläinen kysymys: Minun pelini kentässä on 100 palloa jotka ovat satunnaisissa paikoissa(käytin taulukkoa). Kyllä se toimii kun pelaaja poimii jonkun muun tavaran ,jossa en ole käyttänyt taulukkoa. Mutta miten saan pelaajan poimimaan vain yhden pallon,jossa olen käyttänyt taulukkoa, kun sitä koskettaa (yritin objectsoverlap, mutta MAV iski).
iTKEVAnAKKI
Advanced Member
Posts: 335
Joined: Tue Aug 28, 2007 3:55 pm
Location: Siellä jossain

Re: Tyhmät kysymykset

Post by iTKEVAnAKKI »

Tälläisessä ei välttämättä kannata yrittää poistaa, vaan sijoittaa uudelleen johonkin muualle. Ja parempi olisi tietenkin tehdä typeillä ;)

Code: Select all

FrameLimit 40

Dim piste(10)
  ukko = LoadObject("Media\guy.bmp", 72)
  piste(0) = LoadObject("Media\bullet.bmp")
  For a=1 To 10
    piste(a)=CloneObject(piste(0))
    ScreenPositionObject piste(a),Rand(0,ScreenWidth()),Rand(0,ScreenHeight())
  Next a

  ClsColor cbWhite
  
  palloja=11

Repeat

    If LeftKey() Then TurnObject ukko, 5
    If RightKey() Then TurnObject ukko, -5    
    
    If UpKey() Then MoveObject ukko, 2
    If DownKey() Then MoveObject ukko, -2
    
    For a=0 To 10
      If ObjectsOverlap(ukko,piste(a),3) Then
        PositionObject piste(a),9999999,9999999
        palloja-1
      EndIf
    Next a
    
  Color cbblack
  Text 0,0,palloja
    
DrawScreen
Forever
Projektit:
Joku projekti meneillään... Mitähän siitäkin tulee ;)
henrik93
Newcomer
Posts: 11
Joined: Tue Aug 28, 2007 4:13 pm

Re: Tyhmät kysymykset

Post by henrik93 »

Juuri tätä hain, kiitokset :D . (Minusta taulukot on paljon helpompia kuin tyypit joten teen aina taulukoilla).
Marcoder
Active Member
Posts: 120
Joined: Tue Aug 28, 2007 8:21 am

Re: Tyhmät kysymykset

Post by Marcoder »

henrik93 wrote:Minun pelini kentässä on 100 palloa jotka ovat satunnaisissa paikoissa...
Nuo objektien siirtopurkkaviritykset kannattaa unohtaa ja taulukon sijasta käyttää tässä hommassa typeä.

Code: Select all

SCREEN 800, 600

objBall = LoadObject("media/tatti.bmp")
ShowObject objBall, OFF

objPlayer = LoadObject("media/soldier.bmp", 72)

Type BALLS
    Field obj
EndType

For i = 1 To 100
    b.BALLS = New(BALLS)
    b\obj = CloneObject(objBall)
    PositionObject b\obj, Rand(-400, 400), Rand(-300, 300)
Next i

pickedBalls = 0

Repeat
    MoveObject objPlayer, (UpKey() - DownKey()) * 5
    TurnObject objPlayer, (LeftKey() - RightKey()) * 5
    
    For b.BALLS = Each BALLS
        If ObjectsOverlap(objPlayer, b\obj) Then
            DeleteObject b\obj
            Delete b
            pickedBalls + 1
        EndIf
    Next b
    
    Text 0, 0, "Picked balls: " + pickedBalls
    DrawScreen
Forever
henrik93
Newcomer
Posts: 11
Joined: Tue Aug 28, 2007 4:13 pm

Re: Tyhmät kysymykset

Post by henrik93 »

Käyhän se nuinkin, kiitokset molemmille vaivannäöstä, mutta heti ilmeni toinen ongelma. laitoin pelaajan seuraamaan hiirtä ja kun se sai hiiren kiinni, pelaaja alkoi kääntyilemään kaikkialle. Onko mahdollista saada pelaaja pysähtymään kun se saa hiiren kiinni :?:
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

if distance2(ukko,hiiri)>30 ' Muuta tuo 30 sopivaksi
  //////////liikutus////////////
endif
en testannut, mutta noin pitäisi kait toimia :D

EDIT: juu, toimii ;)
Projektit:
Joku projekti meneillään... Mitähän siitäkin tulee ;)
henrik93
Newcomer
Posts: 11
Joined: Tue Aug 28, 2007 4:13 pm

Re: Tyhmät kysymykset

Post by henrik93 »

Juup, toimii. Kiitän ja nyt pääsen jatkamaan peliä :D
Guest

Re: Tyhmät kysymykset

Post by Guest »

Pitäisi saada npc-hahmot kävelemään tietyn laatikon luokse. Osaan kyllä käyttää objectsightia, pointobjectia ja muita, mutta en keksi miten tekisin tuon. Laatikko on tehty sillä Marcoderin 3d-talo-systeemillä. Kokeilin tehdä niin, että laitan näkymättömän objektin laatikon keskelle, mutta hahmot eivät näe sitä, koska laatikossa on törmäystunnistus.
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 »

Guest wrote:Pitäisi saada npc-hahmot kävelemään tietyn laatikon luokse. Osaan kyllä käyttää objectsightia, pointobjectia ja muita, mutta en keksi miten tekisin tuon. Laatikko on tehty sillä Marcoderin 3d-talo-systeemillä. Kokeilin tehdä niin, että laitan näkymättömän objektin laatikon keskelle, mutta hahmot eivät näe sitä, koska laatikossa on törmäystunnistus.
Eivät näe? Mitäs väliä sillä, pointobject toimii silti..
Guest

Re: Tyhmät kysymykset

Post by Guest »

Niin, mutta jos laitan If ObjectSight(vihollinen, laatikko), viholliset eivät näe laatikon sisällä olevaa objektia. Jos taas en laita sitä, viholliset katsovat koko ajan laatikkoa kohti.
atomimalli
Moderator
Moderator
Posts: 227
Joined: Wed Aug 29, 2007 3:55 pm

Re: Tyhmät kysymykset

Post by atomimalli »

Suurenna objectrange(tai joku sinne päin) laatikkoa isommaksi.
Guest

Re: Tyhmät kysymykset

Post by Guest »

Ei toimi noin. Eikös ObjectSight tarkista näkeekö objekti toisen objektin keskipisteen, eikä siis mitään pikselintarkkaa tarkistusta? Koska tässä tapauksessa keskipiste on hit-kerroksen sisällä, muut objektit eivät näe sitä.
En tarvitse enää apua, koska ratkaisin jo ongelman purkalla ja jeesusteipillä; laitoin laatikoiden ympärille muutaman objektin, joiden avulla npc:t osaavat suunnistaa niiden luokse.
MaGetzUb
Guru
Posts: 1715
Joined: Sun Sep 09, 2007 12:35 pm
Location: Alavus

Re: Tyhmät kysymykset

Post by MaGetzUb »

mutta eikö se ois toiminu ku oisit tehny sun pelin Media/Data kansioon jonku näkymättömän objektin? esim musta 1 pikseli kokoone laatikko?
Solar Eclipse
Meneillä olevat Projektit:
We're in a simulation, and God is trying to debug us.
Zrazy_Coder
Member
Posts: 60
Joined: Sun Sep 09, 2007 8:46 pm

Re: Tyhmät kysymykset

Post by Zrazy_Coder »

Ooh kesti tunti löytää tänne "Tyhmät kysymykset " paikkan.No kysymys
Miten saa sillei kun strategia peleissä on että kun painaa hiiren nappulaa pohjassa ja liikutta hiirtää niin tulee sellanen neliö ?
Osaisin varmaan sellasen pelkän neliön mutta en osaa niin, että ne reunat olisi vaikka bulletteja.
Eli en tajuu miten tuo tehtäis, kun vetää isommaksi sitä neliötä niin pitäisi tulla aina enemmän niitä bulletteja ettei jää rakoja siihen neliöön . :?:
AllAh
Newcomer
Posts: 33
Joined: Mon Oct 08, 2007 8:37 am
Location: Muhos

Re: Tyhmät kysymykset

Post by AllAh »

Kumma ongelma pelissä.Painovoima toimii ihan hyvin mut sit kun se seisoo maassa ni yhtäkkiä menee siit läpi ja putoo alas.


Tuossa se koodi:

Code: Select all

      
    
     vauhti=0 'oletuksena ei liikettä

    CloneCameraPosition ukko
    'liikuta pelihahmoa
    TranslateObject ukko,vauhti,yPlus#
    yPlus=yPlus+PAINOVOIMA 'päivitä painovoima    
    
    UpdateGame 'päivitä törmäys
   
    
    maassa=0 'ilmassa jollei toisin käy ilmi
    törmäykset=CountCollisions(ukko)
    'katsotaan tärmätäänkö kattoon tai lattiaan
    For i=1 To törmäykset
        If GetCollision(ukko,i)=kenttä
            'lattia
            If CollisionAngle(ukko,i)=90 Then 
                yPlus#=-1
                maassa=1 'jalat on maassa
            EndIf
            'katto
            If CollisionAngle(ukko,i)=270 Then 
                yPlus#=-1
            EndIf
        EndIf
    Next i 
     If KeyHit(cbKeys) And maassa(KUN TUON POISTI NIIN HYPPY TOIMI) Then 
        yPlus#=2.5
    'HYPPY (vain jos jalat maassa)
     'voimaa ylös päin
    EndIf  
    
DrawGame
    'piirrä "kenttä"  
    
    DrawScreen

Until EscapeKey()

Kaikki on repeatin sisässä mut en sitä alkua jaksanu tänne tunkee
Valmiita:
Ragdollvoimistelua
Työn alla:
Rägdollitappelu jolle ei vielä nimeä löydy.
Valmiina:
Ei paljon mitään
Tulossa:
Kakkosplayeri, muutama ase,Bullet time,kenttiä
alkaja

Re: Tyhmät kysymykset

Post by alkaja »

niin että miten ma saisin nämä kudit tappamaan vihut?
En ymmärrä..... :o
mulla on esimerkiksi ukko ja ruudun keskellä lehmä joka on vihu ja sitten mä oon saanu ukon ampumaan keltasia palloja mut en osaa hp:ta, osuma juttua ja kuolemaa..........

että voisko auttaa?
Eh.

Kymysys.

Post by Eh. »

Onko ohjelmalla mahdollista tehdä troijalaisia/keyloggereita. Tarkoitan sellaisia joita anti-virus -ohjelmat eivät tunnista
Khamûl
Member
Posts: 73
Joined: Sat Sep 22, 2007 8:46 pm

Re: Tyhmät kysymykset

Post by Khamûl »

jaa mihinköhän tarkoitukseen... :roll:
Will the highways on the Internet become more few? --G.W.Bush
Locked