public void SetCredits (CreditGroup[] CreditGroups) {
		ClearCredits();

		foreach (CreditGroup creditGroup in CreditGroups) {
			AddCreditGroup(creditGroup);
		}
	}
	// Objects to test credit generation
	void testCreditObjects () {
		CreditGroup credits = new CreditGroup("Programmers", "Arnold", "Tony Stark");
		Debug.Log(credits);

		CreditGroup[] allCredits = CreditsController.GenerateCredits();

		for (int i = 0; i < allCredits.Length; i++) {
			Debug.Log(allCredits[i]);
		}
	}
	public void AddCreditGroup (CreditGroup creditGroup) {
		Transform visualCreditGroup = ((GameObject) Instantiate(CreditGroupPrefab)).transform;

		VisualCreditGroup visualCreditGroupController = visualCreditGroup.GetComponent<VisualCreditGroup>();

		visualCreditGroup.SetParent(CreditsRect);

		visualCreditGroup.localScale = new Vector3(1, 1, 1);

		visualCreditGroupController.Set(creditGroup);
	}
	public CreditGroup[] GenerateCredits () {
		string[,] creditsAsStrings = CSVUtil.ReadCSV(CreditsFilePath);

		CreditGroup[] allCredits = new CreditGroup[creditsAsStrings.GetLength(0)];

		for (int i = 0; i < allCredits.Length; i++) {
			allCredits[i] = new CreditGroup(
				ArrayUtil.RemoveEmptyElements(
					ArrayUtil.CopyColumn(creditsAsStrings, i)
				)
			);
		}

		return allCredits;
	}
Пример #5
0
        private void OnPaintCredit(object sender, PaintEventArgs args)
        {
            if (_creditIndex == _creditGroups.Count)
            {
                return;
            }

            CreditGroup grp = (CreditGroup)_creditGroups[_creditIndex];

            Color col;

            if (_creditStep < 10)
            {
                col = ColorUtil.CalculateColor(SystemColors.WindowText, SystemColors.Window, _creditStep * (255 / 10));
            }
            else if (_creditStep < 40)
            {
                col = SystemColors.WindowText;
            }
            else if (_creditStep < 50)
            {
                col = ColorUtil.CalculateColor(SystemColors.WindowText, SystemColors.Window, (50 - _creditStep) * (255 / 10));
            }
            else
            {
                return; //no draw
            }
            Graphics g         = args.Graphics;
            SizeF    name_size = g.MeasureString(grp._name, _boldFont);
            Brush    br        = new SolidBrush(col);
            float    y         = (_mainPanel.Height - (name_size.Height * (1 + grp._credits.Length))) / 2;
            float    width     = this.Width;

            DrawString(g, grp._name, _boldFont, br, y);
            y += name_size.Height;
            foreach (Entry e in grp._credits)
            {
                DrawString(g, WindowManagerPlugin.Instance.WindowPreference.OriginalPreference.Language == Language.English ? e._en_name : e._ja_name, _mainPanel.Font, br, y);
                y += name_size.Height;
            }
            br.Dispose();
        }
	public void Set (CreditGroup credit) {
		Title.text = credit.Title;

		AllCredits.text = credit.GetAllCredits();
	}