Skip to content

Commit 05c2787

Browse files
authored
Merge pull request #3573 from potsmugen/push11
feat(debug): CNS duplicate parameter warnings; compiler fixes
2 parents 52d5536 + 2749171 commit 05c2787

4 files changed

Lines changed: 221 additions & 129 deletions

File tree

src/char.go

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2920,6 +2920,7 @@ type PalInfo struct {
29202920

29212921
type CharGlobalInfo struct {
29222922
def string
2923+
name string
29232924
nameLow string
29242925
displayname string
29252926
defaultDisplayname string
@@ -3484,9 +3485,8 @@ func (c *Char) applyMapOverrides() {
34843485
}
34853486
}
34863487

3487-
// Restore defaults for values that ModifyPlayer can mutate and that would
3488-
// otherwise leak when a cached root is reused as a fresh entrant.
3489-
func (c *Char) resetCachedPlayerState() {
3488+
// Some of these are overridden later anyway, but we'll reset them just in case
3489+
func (c *Char) resetModifyPlayer() {
34903490
gi := c.gi()
34913491
gi.displayname = gi.defaultDisplayname
34923492
gi.lifebarname = gi.defaultLifebarname
@@ -3496,6 +3496,7 @@ func (c *Char) resetCachedPlayerState() {
34963496
c.powerMax = gi.data.power
34973497
c.dizzyPointsMax = gi.data.dizzypoints
34983498
c.guardPointsMax = gi.data.guardpoints
3499+
// c.teamside already assigned by loadCharacter()
34993500
}
35003501

35013502
func (c *Char) load(def string) error {
@@ -3509,6 +3510,7 @@ func (c *Char) load(def string) error {
35093510
gi.animTable = NewAnimationTable()
35103511
gi.fnt = make(map[int]*Fnt)
35113512
gi.portraitscale = 1
3513+
gi.customShaders = nil
35123514

35133515
for i := 0; i < sys.cfg.Config.PaletteMax; i++ {
35143516
pal := gi.palInfo[i]
@@ -3597,18 +3599,21 @@ func (c *Char) load(def string) error {
35973599
}
35983600
info = false
35993601

3600-
c.name, _, _ = is.getText("name")
3602+
gi.name, _, _ = is.getText("name")
3603+
c.name = gi.name
36013604
var ok bool
36023605
if gi.displayname, ok, _ = is.getText("displayname"); !ok {
3603-
gi.displayname = c.name
3606+
gi.displayname = gi.name
36043607
}
36053608
if gi.lifebarname, ok, _ = is.getText("lifebarname"); !ok {
36063609
gi.lifebarname = gi.displayname
36073610
}
3611+
gi.author, _, _ = is.getText("author")
3612+
// Save default values to be restored later
36083613
gi.defaultDisplayname = gi.displayname
36093614
gi.defaultLifebarname = gi.lifebarname
3610-
gi.author, _, _ = is.getText("author")
3611-
gi.nameLow = strings.ToLower(c.name)
3615+
// Save lower case variants. These are just to avoid needing strings.ToLower() all over the code
3616+
gi.nameLow = strings.ToLower(gi.name)
36123617
gi.displaynameLow = strings.ToLower(gi.displayname)
36133618
gi.authorLow = strings.ToLower(gi.author)
36143619
// In Mugen localcoord is clamped to 1. But that's already unplayable anyway so such a safeguard is useless

0 commit comments

Comments
 (0)