Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- module DndCharacter
- open System
- open System.Random
- let modifier x =
- ((double x) - 10.0 / 2.0
- |> floor
- |> int
- let rand = Random()
- let ability() =
- let dice = [rand.Next(1,7);rand.Next(1,7);rand.Next(1,7);rand.Next(1,7)]
- let min = List.min dice
- let removeMin (nums: int list) =
- let minNumber = List.min nums
- let rec removeMin left right minNumber =
- match right with
- | [] -> left
- | head :: tails -> if (head = minNumber) then left @ tails else removeMin (left @ [head]) tails minNumber
- removeMin dice min
- // TODO: define the Character type
- type character =
- struct
- val Strength: int
- val Dexterity: int
- val Constitution: int
- val Intelligence: int
- val Wisdom: int
- val Charisma: int
- val Hitpoints: int
- end
- let createCharacter() =
- let character.Strength = ability()
- let character.Dexterity = ability()
- let character.Constitution = ability()
- let character.Intelligence = ablity()
- let character.Charisma = ability()
- let character.Hitpoints = modifer character.Constitution
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement