min values WIP

This commit is contained in:
Alexander Yakovlev 2024-01-10 21:16:57 +07:00
parent 76835fc4f3
commit 45c7a4b511
2 changed files with 170 additions and 124 deletions

View file

@ -1,5 +1,7 @@
# author: Oreolek
# title: chargen
INCLUDE increments.ink
VAR ifid = "fill this pls"
VAR background = "back.png"
@ -8,6 +10,8 @@ LIST dice = d2 = 2, d4 = 4, d6 = 6, d8 = 8, d10 = 10, d12 = 12, d20 = 20
VAR attrpoints = 5
VAR strength = d2
VAR will = d2
VAR strength_min = d2
VAR will_min = d2
VAR humanity = d2 // How toon-ish you look, from Roger Rabbit to Jessica Rabbit
VAR athletics = d2 // Jumping, Running
@ -26,7 +30,66 @@ VAR name = ""
VAR surname = ""
VAR flavor = "egg"
-> step1
-> step_name
=== step_name
You are a shapeshifting alien working as a photo model for Sunday comic strips.
Select your name.
<ul>
<li>Mercury: +1 to Strength</li>
<li>Venus: +1 to Will</li>
</ul>
+ > Mercury Day
{ name != "Mercury":
~ plus(strength, true)
~ minus(will, true)
}
~ strength_min = d4
~ name = "Mercury"
~ surname = "Day"
~ will_min = d2
-> step_flavor
+ > Mercury Night
{ name != "Mercury":
~ plus(strength, true)
~ minus(will, true)
}
~ strength_min = d4
~ name = "Mercury"
~ surname = "Night"
~ will_min = d2
-> step_flavor
+ > Venus Day
{ name != "Venus":
~ plus(will, true)
~ minus(strength, true)
}
~ name = "Venus"
~ surname = "Day"
~ will_min = d4
~ strength_min = d2
-> step_flavor
+ > Venus Night
{ name != "Venus":
~ plus(will, true)
~ minus(strength, true)
}
~ name = "Venus"
~ surname = "Night"
~ will_min = d4
~ strength_min = d2
-> step_flavor
=== step_flavor
Select your Mystery Flavor.
+ Egg -> step1
+ (Back) -> step_name
=== step1
@ -51,16 +114,16 @@ Choose your magic type.
+ Back -> step1
+ Writing Magic<st>Manifest words into reality. If you write BOOM, it's an explosion; if you write EXIT, it's a new door.</st>[]
~ magic = "writing"
-> step3
-> step_skills
+ Comic Magic<st>You run on comic logic.</st>
~ magic = "comic"
-> step3
-> step_skills
=== step3
=== step_skills
Choose your starting skills. You cannot go over the attribute value.
Athletics (Strength): {link("-", "str_minus")} {athletics} {link("+", "str_plus")}
Athletics (Strength): {link("-", "athletics_minus")} {athletics} {link("+", "athletics_plus")}
<small>Jumping, Running.</small>
@ -89,131 +152,12 @@ Performance (Strength): {link("-", "str_minus")} {performance} {link("+", "str_p
+ Back -> step2
+ Finish -> finish
=== step0_5
Select your Mystery Flavor.
+ Egg -> step1
=== step0_75
You are a shapeshifting alien working as a photo model for Sunday comic strips.
Select your name.
<ul>
<li>Mercury: +1 to Strength</li>
<li>Venus: +1 to Will</li>
</ul>
+ > Mercury Day
~ name = "Mercury"
~ surname = "Day"
-> step1
+ > Mercury Night
~ name = "Mercury"
~ surname = "Night"
-> step1
+ > Venus Day
~ name = "Venus"
~ surname = "Day"
-> step1
+ > Venus Night
~ name = "Venus"
~ surname = "Night"
-> step1
+ Back -> step0_5
=== finish
-> END
=== function link(text, target) ===
~ return "<a class='inlinelink' href='\#' data-href='{target}'>{text}</a>"
=== function minus(ref attr)
{ attr == LIST_MIN(dice):
~ return false
}
{ attr == d2:
~ return false
}
{ attrpoints == 5:
~ return false
}
~ attrpoints++
{ attr:
- d4:
~ attr = d2
- d6:
~ attr = d4
- d8:
~ attr = d6
- d10:
~ attr = d8
- d12:
~ attr = d10
- d20:
~ attr = d12
}
//~ temp nextDice = LIST_RANGE(dice, LIST_MIN(dice), attr)
//~ nextDice -= attr
//~ attr = LIST_MAX(nextDice)
~ return true
=== function plus(ref attr)
{ attr == LIST_MAX(dice):
~ return false
}
{ attr == d20:
~ return false
}
{ attrpoints == 0:
~ return false
}
~ attrpoints--
{ attr:
- d2:
~ attr = d4
- d4:
~ attr = d6
- d6:
~ attr = d8
- d8:
~ attr = d10
- d10:
~ attr = d12
- d12:
~ attr = d20
}
//~ temp nextDice = LIST_RANGE(dice, attr, LIST_MAX(dice))
//~ nextDice -= attr
//~ attr = LIST_MIN(nextDice)
~ return true
=== function roll(ref attr)
~ return RANDOM(1, LIST_VALUE(attr))
=== str_plus
~ plus(strength)
-> step1
=== str_minus
~ minus(strength)
-> step1
=== will_minus
~ minus(will)
-> step1
=== will_plus
~ plus(will)
-> step1
=== hum_minus
~ minus(humanity)
-> step1
=== hum_plus
~ plus(humanity)
-> step1

102
game/increments.ink Normal file
View file

@ -0,0 +1,102 @@
=== function minus(ref attr, free)
{ attr == LIST_MIN(dice):
~ return false
}
{ attr == d2:
~ return false
}
{ attrpoints == 5:
~ return false
}
{ attr == strength && attr == strength_min:
~ return false
}
{ attr == will && attr == will_min:
~ return false
}
{ free != true:
~ attrpoints++
}
{ attr:
- d4:
~ attr = d2
- d6:
~ attr = d4
- d8:
~ attr = d6
- d10:
~ attr = d8
- d12:
~ attr = d10
- d20:
~ attr = d12
}
//~ temp nextDice = LIST_RANGE(dice, LIST_MIN(dice), attr)
//~ nextDice -= attr
//~ attr = LIST_MAX(nextDice)
~ return true
=== function plus(ref attr, free)
{ attr == LIST_MAX(dice):
~ return false
}
{ attr == d20:
~ return false
}
{ attrpoints == 0:
~ return false
}
{ free != true:
~ attrpoints--
}
{ attr:
- d2:
~ attr = d4
- d4:
~ attr = d6
- d6:
~ attr = d8
- d8:
~ attr = d10
- d10:
~ attr = d12
- d12:
~ attr = d20
}
//~ temp nextDice = LIST_RANGE(dice, attr, LIST_MAX(dice))
//~ nextDice -= attr
//~ attr = LIST_MIN(nextDice)
~ return true
=== str_plus
~ plus(strength, false)
-> step1
=== str_minus
~ minus(strength, false)
-> step1
=== will_minus
~ minus(will, false)
-> step1
=== will_plus
~ plus(will, false)
-> step1
=== hum_minus
~ minus(humanity, false)
-> step1
=== hum_plus
~ plus(humanity, false)
-> step1
=== athletics_plus
~ plus(athletics, false)
-> step_skills
=== athletics_minus
~ minus(athletics, false)
-> step_skills