-
Notifications
You must be signed in to change notification settings - Fork 5.6k
cluedo terminado #3724
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
cluedo terminado #3724
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,26 +1,166 @@ | ||
| // ITERATION 1 | ||
|
|
||
| // Suspects Array | ||
|
|
||
| const suspectsArray = []; | ||
|
|
||
| // Rooms Array | ||
|
|
||
| const roomsArray = []; | ||
|
|
||
| // Weapons Array | ||
| // ITERATION 2 | ||
|
|
||
|
|
||
| function pickMystery() {} | ||
|
|
||
|
|
||
| // ITERATION 3 | ||
|
|
||
| function revealMystery() {} | ||
|
|
||
|
|
||
|
|
||
| const mrGreen = { | ||
| firstName: "Jacob", | ||
| lastName: "Green", | ||
| occupation: "Entrepreneur", | ||
| age: 45, | ||
| description: "He has a lot of connections", | ||
| image: "https://pbs.twimg.com/profile_images/506787499331428352/65jTv2uC.jpeg", | ||
| color: "green", | ||
| } | ||
|
|
||
|
|
||
| const drOrchid = { | ||
| firstName: "Doctor", | ||
| lastName: "Orchid", | ||
| occupation: "Scientist", | ||
| age: 26, | ||
| description: "PhD in plant toxicology. Adopted daughter of Mr. Boddy", | ||
| image: "http://www.radiotimes.com/uploads/images/Original/111967.jpg", | ||
| color: "white", | ||
| } | ||
|
|
||
|
|
||
|
|
||
| const profPlum = { | ||
| firstName: "Victor", | ||
| lastName: "Plum", | ||
| occupation: "Designer", | ||
| age: 22, | ||
| description: "Billionaire video game designer", | ||
| image: "https://66.media.tumblr.com/ee7155882178f73b3781603f0908617c/tumblr_phhxc7EhPJ1w5fh03_540.jpg", | ||
| color: "purple", | ||
| } | ||
|
|
||
|
|
||
|
|
||
| const missScarlet = { | ||
| firstName: "Kasandra", | ||
| lastName: "Scarlet", | ||
| occupation: "Actor", | ||
| age: 31, | ||
| description: "She is an A-list movie star with a dark past", | ||
| image: "https://www.radiotimes.com/uploads/images/Original/111967.jpg", | ||
| color: "red", | ||
| } | ||
|
|
||
|
|
||
|
|
||
| const mrsPeacock = { | ||
| firstName: "Eleanor", | ||
| lastName: "Peacock", | ||
| occupation: "Socialité", | ||
| age: 36, | ||
| description: "She is from a wealthy family and uses her status and money to earn popularity", | ||
| image: "https://metrouk2.files.wordpress.com/2016/07/mrs-peacock.jpg", | ||
| color: "blue", | ||
| } | ||
|
|
||
|
|
||
| const weaponsArray = []; | ||
| const mrMustard = { | ||
| firstName: "Jack", | ||
| lastName: "Mustard", | ||
| occupation: "Retired Football player", | ||
| age: 62, | ||
| description: "He is a former football player who tries to get by on his former glory", | ||
| image: "https://static.independent.co.uk/s3fs-public/thumbnails/image/2016/07/04/08/unspecified-3.jpg", | ||
| color: "yellow", | ||
| } | ||
|
|
||
|
|
||
| const suspectsArray = [ | ||
| mrGreen, drOrchid, profPlum, missScarlet, mrsPeacock, mrMustard | ||
| ]; | ||
|
|
||
|
|
||
| const weaponsArray = [ | ||
| {name: "rope", weight: 10}, | ||
| {name: "knife", weight: 8}, | ||
| {name: "candlestick", weight: 2}, | ||
| {name: "dumbbell", weight: 30}, | ||
| {name: "poison", weight: 2}, | ||
| {name: "axe", weight: 15}, | ||
| {name: "bat", weight: 13}, | ||
| {name: "trophy", weight: 25}, | ||
| {name: "pistol", weight: 20}, | ||
| ] | ||
|
|
||
|
|
||
|
|
||
| const roomsArray = [ | ||
| {name: "Dining-Room"}, | ||
| {name: "Conservatory"}, | ||
| {name: "Kitchen"}, | ||
| {name: "Study"}, | ||
| {name: "Library"}, | ||
| {name: "Billiard-Room"}, | ||
| {name: "Lounge"}, | ||
| {name: "Ballroom"}, | ||
| {name: "Hall"}, | ||
| {name: "Spa"}, | ||
| {name: "Living-Room"}, | ||
| {name: "Observatory"}, | ||
| {name: "Theater"}, | ||
| {name: "Guest-House"}, | ||
| {name: "Patio"}, | ||
| ] | ||
|
|
||
| // ITERATION 2 | ||
|
|
||
| function selectRandom() {} | ||
| function selectRandom(room, weapon, suspect) { | ||
|
|
||
| let randomCard = []; | ||
|
|
||
| const randomIndexroom = Math.floor(Math.random() * room.length); | ||
|
|
||
| const randomRoom = room[randomIndexroom]; | ||
|
|
||
| randomCard.push(randomRoom) | ||
|
|
||
| const randomIndexweapon = Math.floor(Math.random() * weapon.length); | ||
|
|
||
| const randomWeapon = weapon[randomIndexweapon]; | ||
|
|
||
| randomCard.push(randomWeapon); | ||
|
|
||
| const randomIndexsuspect = Math.floor(Math.random() * suspect.length); | ||
|
|
||
| const randomSuspect = suspect[randomIndexsuspect]; | ||
|
|
||
| randomCard.push(randomSuspect); | ||
|
|
||
| console.log(randomCard) | ||
|
|
||
| return randomCard; | ||
|
|
||
| } | ||
|
|
||
| const randomCard = selectRandom(roomsArray, weaponsArray, suspectsArray) | ||
|
|
||
|
|
||
|
|
||
| function pickMystery() {} | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Esta función debería llamar a selectRandom asignar la respuestas a diferentes constantes. Por ejemplo; suspect, room, weapon y después de eso pasarle un objeto ya compuesto a revealMystery. De esta manera revealMystery no necesita saber en que posición del array viene cada cosa sino acceder directamente al objeto. Podrias acceder de la siguiente manera: mystery.suspect.firstName, mystery.suspect.lastName, mystery.weapon.name y mystery.room.name |
||
|
|
||
|
|
||
| // ITERATION 3 | ||
|
|
||
| function revealMystery() {} | ||
| function revealMystery(randomCard) { | ||
| return `${randomCard[2].firstName} ${randomCard[2].lastName} killed Mr.Boddy using the ${randomCard[1].name} in the ${randomCard[0].name}` | ||
| } | ||
|
|
||
| console.log(revealMystery(randomCard)) | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Es importante hacerlo en una sola función, ya que de esta manera estas repitiendo código. Fijate que haces un Math.floor y la siguiente lineas accedes al array y lo pusheas.
Sería mucho más fácil si pasandole un array la función te devuelve un elemento.