Guest User

Untitled

a guest
Nov 18th, 2018
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.11 KB | None | 0 0
  1. * pitää tehdä kun alkaa enemmän tekemään toiminnallisuutta
  2. ** Nämä lisäominaisuudet voidaan lisätä sitten kun on jo suunniteltu pidemmälle.
  3. [Mitä tapahtuu kun kello menee pykälän eteenpäin]
  4. {Mitä tapahtuu kun tekee jotain}
  5.  
  6.  
  7. GameObject
  8.  
  9. gps piste
  10. string Type (tankin tyyppi on "Tank", tornin esim "Defence Tower")
  11. Kuva (joka näkyy kartalla)
  12.  
  13.  
  14. Mineral perii GameObjectin
  15.  
  16. int Amount (kuinka paljon mineraalia on. mitä enemmän amount on sitä nopeampaa tulee mineraalia. väheneekö amount ajan kanssa?)
  17. (objektin tyypin perusteella määritetään mikä mineraali on kyseessä)
  18.  
  19.  
  20. Structure perii GameObjectin (sisältää alaluokat vehiclen ja eri rakennukset, keksitään parempi nimi?)
  21.  
  22. int Health
  23. *int Range (kuinka kauas objekti näkee)
  24. *int MaxHealth
  25. *string Owner (kenen kontrollissa tavara on. kun on oma tankki valittuna ja klikkaa omaa tankkia vaihtuu valinta mutta jos klikkaa vihollisen tankkia alkaa oma tankki ampumaan sitä)
  26. **int Armor
  27. **int Shield (jos halutaan että osa healthista regeneroituu)
  28. **boolean SeeStealth (tämä yksikkö pystyy näkemään stealthiyksiköt, myös Player näkee nämä automaattisesti)
  29.  
  30.  
  31. DefenseTower perii Structuren
  32.  
  33. GameObject Target (mitä torni ampuu, kannattaako tämän olla attribuutti vai onko parempia ratkaisuja?)
  34. *int Damage
  35. *int FireRange (jos on eroa näkemisen ja ampumisen välillä)
  36. *int Firerate
  37. ** boolean TargetFlying (voiko lentäviä ampua)
  38. ** boolean TargetGround (voiko maayksiköitä ampua)
  39. ** int FlyingDamage (damage lentäviin)
  40. [Jos tykin alueella on vastustajia, tekee se damagea Targettiin, fireratella voidaan määrittää tapahtuuko tämä joka kerta vai tietyn väliajoin]
  41.  
  42. Mine perii Structuren
  43.  
  44. int MiningRange
  45. *int MiningSpeed
  46. [Tarkastetaan mitä mineraaleja on alueella (ei välttämättä tarvi tarkastaa kuin ensimmäisellä kerralla ja tallentaa referenssit mineraaleihin, jolloin attribuuttina pitää olla mineraalitaulukko jossa ne ovat). Lisätään mineraaleja pelaajan varantoon miningspeedin mukaan ja vähennetään tarvittaessa mineraalilöydöksestä. Laskualgoritmissa voi ottaa huomioon etäisyyden mineraaliin]
  47.  
  48.  
  49. Commandcenter perii Structuren
  50.  
  51. int CommandRange
  52.  
  53.  
  54. PowerPlant perii Structuren (energiankäytön toiminnallisuutta pitää miettia tarkemmin)
  55.  
  56. int PowerRange
  57. *int Efficiency (kuinka nopeaa/paljon energiaa tulee)
  58. [energiaa generoituu johonkin reserviin? vai onko tämä vähän kuin supply starcraftissa, että energialaitokset voivat pyörittää tiettyä määrää laitoksia sem alueella(jotkut vievät enemmän energiaa kuin toiset)]
  59.  
  60.  
  61. Vehicle perii Structuren
  62.  
  63. int Speed
  64. Destination (gps piste) (vaikka nämä liikkuvat myös z akselilla ei sillä tarvi olla mitään väliä pelin kannalta)
  65. GameObject Target (mitä tankki ampuu)
  66. *int Damage
  67. *int Firerate
  68. *int FireRange (jos on eroa näkemisen ja ampumisen välillä)
  69. ** boolean IsFlying (voivatko rakennukset lentää?)
  70. ** boolean TargetFlying (voiko lentäviä ampua)
  71. ** boolean TargetGround (voiko maayksiköitä ampua)
  72. ** int FlyingDamage (damage lentäviin)
  73. ** boolean IsStealth (onko näkymätön normaaleille yksiköille. menee mahdollisesti päältä tai pois jonkun kyvyn avulla, jos rakennuksetkin voivat olla näkymättömiä siirretään Structureen)
  74. [jos on joku target(automaattisesti valitaan lähin vihollinen jos ei itse määritetty), ammutaan sitä, tämän jälkeen jos vehiclellä on joku destination liikutaan sen suuntaan nopeuden verran. nopeuslaskussa jätetään z akseli huomioimatta, jotta nopeus on kartalla aina sama.]
  75.  
  76.  
  77. Player perii GameObjectin
  78.  
  79. *string Name
  80. *Range (kuinka kauas pelaaja näkee )
  81. *int Mineral (kuinka paljon on saanut louhittua, jokaista eri mineraalityyppiä kohti oma attribuutti)
  82. *int Energy (kuinka paljon on sähköä käyttämättä, kannattaa ehkä pitää huolta tästä muuten kuin attribuutilla, eli lasketaan aina energianlähteet yhteen ja vähennetään energiankulutus)
  83. **int CommandBonus (annetaan bonusta tankeille ja rakennuksille läsnäolosta commandrangen sisällä)
  84. **int CommandRange
  85. **int ScanRange (kuinka kaukaa voi mineraaleja etsiä)
  86. [Jos gps on päällä otetaan pelaajan uusi paikka selville, jotta voidaan päivittää näkymä ja komentoalue.]
  87.  
  88.  
  89. Scan perii GameObjectin
  90.  
  91. int ScanRange
  92. {Kun pelaaja valitsee skannauksen otetaan hänen gps-koordinaattinsa ja scanrangensa joista tehdään scan tapahtuma. Tapahtumassa tehdään väliaikaiselle alueelle satunnaiset mineraalit. Tämän jälkeen tarkistetaan onko kukaan muu aikaisemmin skannannut aluetta (osaa siitä). Aikaisempien skannien alueelta poistetaan mineraalit väliaikaisesta alueesta. Jäljelle jääneet mineraalit generoidaan mineraalilistaan ja pelaajalle annetaan tieto kaikista mineraaleista mitä skannausalueella on.}
  93.  
  94.  
  95. muuta huomioitavaa:
  96. -jollain pitää pitää huolta mikä yksikkö on valittuna, ehkä Gameobjectilla on IsSelected attribuutti
  97. -Klikatessa tarkastetaan mitä on valittuna ja toiminto suoritetaan sen perusteella.
  98. -kun aika menee eteenpäin pitää päivittää näkymä jokaisen yksikön näkökentän mukaan.
  99. -Yksiköiden komentaminen ei onnistu commandrangen ulkopuolella.
Add Comment
Please, Sign In to add comment