Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
EpX
HV vaatleja

liitunud: 18.03.2006
|
01.10.2009 19:42:06
C# MUDi arendamine |
|
|
Tere,
meil on siis selline projekt tuttavatega käsil, et teeme MUDi laadset konsoolipõhist mängu C# programmeerimiskeeles. Küll aga oleks meil vaja teada, kuidas oleks kõige lihtsam teha selles liikumist. Nt kasutaja kirjutab "vasakule", siis tuleb ruum. Ruumis oleksid nt mingid kirjeldused, vahest ka mõni asi, mida üles saaks korjata ja teatud protsendiga võib tekkida ka koll. Ruumis võiks olla erinevad väljapääsud, nt ühes ruumis vasakule ja paremale. Kolmandas vasakule, paremale ja üles jne jne. Kuidas neid ruume aga mällu talletada. ArrayListi abil hakata töötama?
Üks skeem siis, kuidas võiks asja lahendada:
http://img194.imageshack.us/img194/6594/53613793.png
Küll aga ei tea kust otsast oleks kõige loogilisem ja lihtsam läheneda asjale.
Ette tänades,
EpX
|
|
Kommentaarid: 1 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
1 |
|
tagasi üles |
|
 |
Fukiku
Kreisi kasutaja

liitunud: 06.11.2003
|
01.10.2009 21:34:24
|
|
|
C# kui objektorienteeritud keel peaks olema selle ülesande lahendamiseks ju ideaalne. Ilma detailidesse süüvimata, teete klassi Ruum, iga konkreetne ruum on selle klassi isend, mille küljes on viited kõigile seotud ruumidele. Kasutaja objekti külge panete viite hetke asukoha ruumile. Kasutaja sisendi järgi kontrollite, kas vastavale suunale on naaberruumi viide olemas, kui on, liigutate ära (uuendate kõik vajalikud viidad), kui ei ole, annate kaikaga lollile kasutajale vastu pead.
See oleks üldine visioon, kuidas mina OO kontseptsioonis asjale läheneks. Detailid jäägu lugejale iseseisvaks harjutuseks
_________________ Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist. |
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
neros
HV Guru

liitunud: 26.11.2003
|
01.10.2009 22:11:05
|
|
|
Ma pole küll kindel kas (pole ise kunagi kasutama pidanud) negatiivsed massiiviindeksid on lubatud c#'s? Siis algaks keskpunkt 0,0...
_________________ GitHub
.NET Core & Azure baasil lahendused ja arhitektuur - kontakt. |
|
Kommentaarid: 48 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
40 |
|
tagasi üles |
|
 |
Fukiku
Kreisi kasutaja

liitunud: 06.11.2003
|
01.10.2009 22:42:25
|
|
|
madedog kirjutas: |
Ma pole küll kindel kas (pole ise kunagi kasutama pidanud) negatiivsed massiiviindeksid on lubatud c#'s? Siis algaks keskpunkt 0,0... |
Mina isiklikult ei leia, et peaks hakkama ruumide reaalset asukohta jäigalt massiiviindeksiga siduma, ise vist eelkõige kasutaks siiski lihtsalt oma vahel viitadega seotud struktuuri, kui nüüd natuke meenutada mingit algoritmide ja andmestruktuuride kursust, siis tuleks seal üks kena graaf põhimõtteliselt välja, kus igal ruum on üks tipp ja selle küljes on viidad (=graafi servad) sellest tipust (=ruumist) ligipääsetavatele ruumidele. Esimeses lähenduses pole ehk ju isegi ruumide absoluutne asukoht universumis ju oluline, olulisem on ikka seosed.
_________________ Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist. |
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
Equinox
HV veteran

liitunud: 05.04.2002

|
02.10.2009 11:09:08
|
|
|
Tre,
Jah viitade/linkide süsteem tunbub kõige lihtsam/loogilisem teha olema. Sai kunagi ka ise näpuharjutuse korras proovitud midagi sellist teha. Varasemad mudad olid rohkem kirjeldusfaili põhised, tänapäevasemad on pea vist kõik andmebaasilised (muda mootori oma baas, andmestruktuur), kus maailmaga seotud infot mingil konkreetsel kujul hoitakse. Aga mul on pigem küsimus, kas teemaalgataja teeb seda projekti rohkem näpuharjutuseks või mudamootori loomise eesmärgil. Teisel juhul on ju olemas paras hunnik valmistehtuid mootoreid mille abil oma maailma luua.
Equ
_________________ Live long and prosper!
RIP, Spock. Leonard Nimoy 1931-2015 |
|
Kommentaarid: 27 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
26 |
|
tagasi üles |
|
 |
troglodyte
Kreisi kasutaja

liitunud: 09.08.2002
|
02.10.2009 11:29:46
|
|
|
Kunagi kui ma oma muda kirjutasin siis sai ka viitadega tehtud, kuid viidad olid ikka massiivis. Massiiv oli fikseeritud pikkusega - elementide arv oli max. väljapääsude arv (= 6 - põhi, lõuna, ida, lääs, üles, alla). Igal väljapääsu suunal oli oma kindel indeks ja massiivis viitas vastav index vastavasse suunda (või oli NULL, kui antud suunas väljapääsu ei olnud). Väga lihtne.
_________________ ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn |
|
Kommentaarid: 34 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
34 |
|
tagasi üles |
|
 |
Fukiku
Kreisi kasutaja

liitunud: 06.11.2003
|
02.10.2009 11:35:45
|
|
|
See võib mõningane jõudluse pidur olla suures skaalas, aga samas, ei pea ju piiratud suurusega massiivis viitasid hoidma, sest minuarust ei peaks ilmtingimata 100% kinni hoidma praktikast, et igal ruumil on maksimaalselt kuus väljapääsu, põhimõtteliselt võiks ju neid määramata arv olla ja hoida neid mingis Map struktuuris (mul ei tule selle struktuuri eestikeelne värdtõlge hetkel meelde.. ), kasutades võtmeväärtustena väljapääsude nimesid..
Aga see on juba puhtteoreetiline mulisemine, teemaalgatajat võibolla enam niipalju ei aita..
_________________ Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist. |
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
troglodyte
Kreisi kasutaja

liitunud: 09.08.2002
|
02.10.2009 13:38:00
|
|
|
Paisktabelis?
_________________ ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn |
|
Kommentaarid: 34 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
34 |
|
tagasi üles |
|
 |
Fukiku
Kreisi kasutaja

liitunud: 06.11.2003
|
|
Kommentaarid: 2 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
2 |
|
tagasi üles |
|
 |
Ho Ho
HV Guru

liitunud: 16.02.2002
|
05.10.2009 12:51:21
|
|
|
(Hash)map on overkill "uste" salvestamiseks, harilik dünaamilse pikkusega vektor või kasvõi linked list on piisav selleks ning suht kindlasti efektiivsem, kui map.
_________________ Teach a man to reason and he'll think for a lifetime
Common sense - so rare that it's a damn superpower
Vaadates paljude inimeste sõnavõtte siin ja mujal jääb üle ainult klassikuid tsiteerida - "I weep for humanity" |
|
Kommentaarid: 106 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
1 :: |
86 |
|
tagasi üles |
|
 |
andreie
HV vaatleja

liitunud: 09.09.2006
|
06.10.2009 20:25:09
|
|
|
Võib ju võtta mõne olemasoleva MUD-i aluseks, koodi C#-i ringi visata ja siis seda masseerida enda vajadustele sobivaks. Eelis: ei pea päris nullist alustama.
Ühest keelest teise jõuab käsitsi transleerida ümmarguselt 1000 rida päevas.
_________________ Unix survives only because everyone else has done so badly. |
|
Kommentaarid: 5 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
5 |
|
tagasi üles |
|
 |
keevitaja
AM 10 aastat

liitunud: 05.11.2001
|
06.10.2009 20:52:19
|
|
|
väike off topic: kas kuidaig automaatselt saab üldse näiteks paskali C-ks keerata? ehk siis alama keele kõrgemaks keeleks?
_________________ Hinnavaatlus ei ole koht arvamuse avaldamiseks! |
|
Kommentaarid: 51 loe/lisa |
Kasutajad arvavad: |
   |
:: |
1 :: |
3 :: |
40 |
|
tagasi üles |
|
 |
XYZ
HV Guru

liitunud: 05.11.2001
|
07.10.2009 09:52:58
|
|
|
keevitaja kirjutas: |
väike off topic: kas kuidaig automaatselt saab üldse näiteks paskali C-ks keerata? ehk siis alama keele kõrgemaks keeleks? |
1. C loetakse just madalamaks, s.t. raualähedasemaks keeleks
2. Saab, kui väga tahtmist on. Aga selle käänaja kirjutad ise valmis. Ja võid arvestada kõva käsitööga ikkagi lisaks....
|
|
Kommentaarid: 81 loe/lisa |
Kasutajad arvavad: |
   |
:: |
3 :: |
12 :: |
56 |
|
tagasi üles |
|
 |
|