Scriptname _SAG_PC_StatsTrack_PlayerScript extends ReferenceAlias ObjectReference Property LastKnown Auto GlobalVariable Property ExAequo Auto GlobalVariable Property WonGames Auto GlobalVariable Property LostGames Auto GlobalVariable Property LostBets Auto GlobalVariable Property WonBets Auto String sWonGamesValue String sLostGamesValue String sWonBetsValue String sLostBetsValue Event OnInit() if SKSE.GetVersion() > 0 RegisterForMenu("Journal Menu") else Debug.Trace("NO SKSE: card game stats display is disabled") endif endEvent Event OnPlayerLoadGame() OnInit() EndEvent event OnMenuOpen(string a_menuName) ; won games sWonGamesValue =WonGames.Value as string string[] WGargs = new string[4] WGargs[0] = "Card Game: won games" ; Stat name WGargs[1] = sWonGamesValue as INT WGargs[2] = "0" ; stat category index as string 0 = "General" WGargs[3] = "" UI.InvokeStringA("Journal Menu", "_root.QuestJournalFader.Menu_mc.StatsFader.Page_mc.PopulateStatsList", WGargs) ; lost games sLostGamesValue =LostGames.Value as string string[] LGargs = new string[4] LGargs[0] = "Card Game: lost games" ; Stat name LGargs[1] = sLostGamesValue as INT LGargs[2] = "0" ; stat category index as string 0 = "General" LGargs[3] = "" UI.InvokeStringA("Journal Menu", "_root.QuestJournalFader.Menu_mc.StatsFader.Page_mc.PopulateStatsList", LGargs) ; ex aequo string sExAequoValue = ExAequo.Value as string string[] EAargs = new string[4] EAargs[0] = "Card Game: ex aequo" ; Stat name EAargs[1] = sExAequoValue as INT EAargs[2] = "0" ; stat category index as string 0 = "General" EAargs[3] = "" UI.InvokeStringA("Journal Menu", "_root.QuestJournalFader.Menu_mc.StatsFader.Page_mc.PopulateStatsList", EAargs) ; lost bets GetOwningQuest().UpdateCurrentInstanceGlobal(LostBets) ; Not sure if this is necessary? sLostBetsValue =LostBets.Value as string string[] LBargs = new string[4] LBargs[0] = "Card Game: total lost gold" ; Stat name LBargs[1] = sLostBetsValue as INT LBargs[2] = "0" ; stat category index as string 0 = "General" LBargs[3] = "" UI.InvokeStringA("Journal Menu", "_root.QuestJournalFader.Menu_mc.StatsFader.Page_mc.PopulateStatsList", LBargs) ; won bets sWonBetsValue =WonBets.Value as string string[] WBargs = new string[4] WBargs[0] = "Card Game: total won gold" ; Stat name WBargs[1] = sWonBetsValue as INT WBargs[2] = "0" ; stat category index as string 0 = "General" WBargs[3] = "" UI.InvokeStringA("Journal Menu", "_root.QuestJournalFader.Menu_mc.StatsFader.Page_mc.PopulateStatsList", WBargs) ; all games string Sallgames = (WonGames.Value + LostGames.Value + ExAequo.Value) as string string[] AGargs = new string[4] AGargs[0] = "Card Game: total games played" ; Stat name AGargs[1] = Sallgames as INT AGargs[2] = "0" ; stat category index as string 0 = "General" AGargs[3] = "" UI.InvokeStringA("Journal Menu", "_root.QuestJournalFader.Menu_mc.StatsFader.Page_mc.PopulateStatsList", AGargs) ; last known opponent ; string SLastknown = LastKnown.GetDisplayName() ; string[] LKargs = new string[4] ; LKargs[0] = "Card Game: last opponent" ; Stat name ; if sAllGames != 0 ; LKargs[1] = SLastKnown ; else ; LKArgs[1] = "" ; endif ; LKargs[2] = "0" ; stat category index as string 0 = "General" ; LKargs[3] = "" ; UI.InvokeStringA("Journal Menu", "_root.QuestJournalFader.Menu_mc.StatsFader.Page_mc.PopulateStatsList", LKargs) ; victoryRatio String VictoryRatio if( WonGames.Value + LostGames.Value + ExAequo.Value != 0 ) VictoryRatio = ((WonGames.Value/(WonGames.Value + LostGames.Value + ExAequo.Value)*100) as int) as string +"%" else VictoryRatio = "0%" endif string[] VRargs = new string[4] VRargs[0] = "Card Game: victory ratio" VRargs[1] = VictoryRatio AGargs[2] = "0" AGargs[3] = "" UI.InvokeStringA("Journal Menu", "_root.QuestJournalFader.Menu_mc.StatsFader.Page_mc.PopulateStatsList", VRargs) endEvent