public async Task GenerateLoot(int partyLevel) { var embed = new EmbedBuilder(); embed.WithDescription("__**The Loot**__\n"); string s = (TreasureGenerator.GetLoot(partyLevel)); embed.Description += (string.IsNullOrWhiteSpace(s) ? "A big fat pile of nothing" : s) + "\n\n"; embed.WithTitle("Your party found:"); embed.WithColor(0, 255, 0); await Context.Channel.SendMessageAsync("", embed : embed.Build()); }
void GenerateLevel() { TreasureGenerator gen = new TreasureGenerator() { Level = _Level, Items = _MagicItems, Goods = _Goods, Coin = _Coin }; _LastTreasure = gen.Generate(); ShowLastTreasure(); }
public void Restart() { GameObject[] enemys = GameObject.FindGameObjectsWithTag("Enemy"); for (int i = 0; i < enemys.Length; i++) { enemys[i].SendMessage("OnRestart"); } GameObject.Find("Player").SendMessage("OnRestart"); TreasureGenerator treasureGen = FindObjectOfType(typeof(TreasureGenerator)) as TreasureGenerator; if (treasureGen != null) { treasureGen.SendMessage("OnRestart"); } HitStop(true); Hud.get().DrawStageStart(true); StartCoroutine("RestartWait"); }
public TreasureGeneratorPage() { _SelectionView = new GradientView(); _WebView = new UIWebView(); _EmailButton = new GradientButton(); _EmailButton.SetText("Email"); _EmailButton.SetImage(UIExtensions.GetSmallIcon("mail"), UIControlState.Normal); _EmailButton.ImageEdgeInsets = new UIEdgeInsets(0, 0, 0, 15); _EmailButton.TouchUpInside += EmailButtonClicked; Add(_SelectionView); Add(_WebView); Add(_EmailButton); _LevelTab = new GradientButton(); _LevelTab.SetText("Level"); CMStyles.StyleTab(_LevelTab, true); _SelectionView.StyleBasicPanel(); _SelectionView.Gradient = new GradientHelper(CMUIColors.SecondaryColorADark); _SelectionView.CornerRadius = 0f; _LevelTab.TouchUpInside += LevelTabClicked; _ItemsTab = new GradientButton(); _ItemsTab.SetText("Items"); CMStyles.StyleTab(_ItemsTab, false); _ItemsTab.TouchUpInside += ItemsTabClicked; _SelectionView.Add(_LevelTab); _SelectionView.Add(_ItemsTab); _LevelView = new GradientView(); _ItemsView = new GradientView(); foreach (var v in new GradientView[] { _LevelView, _ItemsView }) { v.StyleBasicPanel(); v.Gradient = new GradientHelper(CMUIColors.SecondaryColorADarker); } _ItemsView.Hidden = true; _SelectionView.Add(_LevelView); _SelectionView.Add(_ItemsView); _GenerateButton = new GradientButton(); _GenerateButton.SetText("Generate"); _GenerateButton.SetSmallIcon("treasure"); _SelectionView.Add(_GenerateButton); _GenerateButton.TouchUpInside += GenerateButtonClicked; //create level items _LevelButton = new GradientButton(); _LevelButton.SetText("Level 1"); _LevelButton.Tag = 1; _LevelView.Add(_LevelButton); _LevelPopover = new ButtonStringPopover(_LevelButton); _LevelPopover.SetButtonText = true; _LevelPopover.ItemClicked += HandleLevelPopoverItemClicked; for (int i = 1; i <= 20; i++) { _LevelPopover.Items.Add(new ButtonStringPopoverItem() { Text = "Level " + i, Tag = i }); } _CoinButton = new GradientButton(); _CoinButton.SetText("Normal Coins"); _LevelView.Add(_CoinButton); _CoinPopover = new ButtonStringPopover(_CoinButton); AddLevelPopoverItems(_CoinPopover, "Coins"); _CoinButton.Tag = 1; _GoodsButton = new GradientButton(); _GoodsButton.SetText("Normal Goods"); _LevelView.Add(_GoodsButton); _GoodsPopover = new ButtonStringPopover(_GoodsButton); AddLevelPopoverItems(_GoodsPopover, "Goods"); _GoodsButton.Tag = 1; _ItemsButton = new GradientButton(); _ItemsButton.SetText("Normal Items"); _ItemsPopover = new ButtonStringPopover(_ItemsButton); _LevelView.Add(_ItemsButton); _ItemsButton.Tag = 1; AddLevelPopoverItems(_ItemsPopover, "Items"); //create item items _CountButton = new GradientButton(); _CountButton.SetText("1 Item"); _CountButton.Tag = 1; _ItemsView.Add(_CountButton); _CountPopover = new ButtonStringPopover(_CountButton); for (int i = 1; i < 61; i++) { string text = i + (i == 1?" Item":" Items"); _CountPopover.Items.Add(new ButtonStringPopoverItem() { Text = text, Tag = i }); } _CountPopover.ItemClicked += HandleLevelPopoverItemClicked; _CountPopover.SetButtonText = true; _ChartLevelButton = new GradientButton(); _ChartLevelButton.SetText("Minor"); _ChartLevelButton.Tag = 0; _ItemsView.Add(_ChartLevelButton); _ChartLevelPopover = new ButtonStringPopover(_ChartLevelButton); _ChartLevelPopover.SetButtonText = true; _ChartLevelPopover.ItemClicked += HandleItemLevelClicked;; _ChartLevelPopover.Items.Add(new ButtonStringPopoverItem() { Text = "Minor", Tag = 0 }); _ChartLevelPopover.Items.Add(new ButtonStringPopoverItem() { Text = "Medium", Tag = 1 }); _ChartLevelPopover.Items.Add(new ButtonStringPopoverItem() { Text = "Major", Tag = 2 }); foreach (var t in new TreasureGenerator.RandomItemType [] { TreasureGenerator.RandomItemType.MagicalArmor, TreasureGenerator.RandomItemType.MagicalWeapon, TreasureGenerator.RandomItemType.Potion, TreasureGenerator.RandomItemType.Wand, TreasureGenerator.RandomItemType.Ring, TreasureGenerator.RandomItemType.Rod, TreasureGenerator.RandomItemType.Scroll, TreasureGenerator.RandomItemType.Staff, TreasureGenerator.RandomItemType.MinorWondrous, }) { var b = new GradientButton(); b.SetText(TreasureGenerator.RandomItemString(t)); b.Tag = (int)t; b.MakeCheckButtonStyle(true); b.Data = true; b.TouchUpInside += CheckButtonChecked; _ItemsView.Add(b); _ItemCheckButtons.Add(b); if (t == TreasureGenerator.RandomItemType.Rod) { _RodButton = b; _RodButton.Enabled = false; } else if (t == TreasureGenerator.RandomItemType.Staff) { _StaffButton = b; _StaffButton.Enabled = false; } } _SelectAllButton = new GradientButton(); _SelectAllButton.SetText("Select All"); _ItemsView.Add(_SelectAllButton); _SelectAllButton.TouchUpInside += SelectButtonClicked; _SelectAllButton.Data = true; _UnselectAllButton = new GradientButton(); _UnselectAllButton.SetText("Unselect All"); _ItemsView.Add(_UnselectAllButton); _UnselectAllButton.TouchUpInside += SelectButtonClicked; _UnselectAllButton.Data = false; }
void GenerateButtonClicked(object sender, EventArgs e) { Treasure t; if (_ShowingItems) { TreasureGenerator gen = new TreasureGenerator(); t = new Treasure(); int count = (int)_CountButton.Tag; ItemLevel level = (ItemLevel)(int)_ChartLevelButton.Tag; TreasureGenerator.RandomItemType types = (TreasureGenerator.RandomItemType) 0; foreach (var b in _ItemCheckButtons) { if ((bool)b.Data) { var v = (TreasureGenerator.RandomItemType)(int) b.Tag; switch (v) { case TreasureGenerator.RandomItemType.MinorWondrous: switch (level) { case ItemLevel.Medium: v = TreasureGenerator.RandomItemType.MediumWondrous; break; case ItemLevel.Major: v = TreasureGenerator.RandomItemType.MinorWondrous; break; } break; case TreasureGenerator.RandomItemType.Rod: case TreasureGenerator.RandomItemType.Staff: if (level == ItemLevel.Minor) { v = (TreasureGenerator.RandomItemType) 0; } break; } types |= v; } } if (types != 0) { for (int i = 0; i < count; i++) { TreasureItem item = gen.GenerateRandomItem(level, types); t.Items.Add(item); } } } else { TreasureGenerator gen = new TreasureGenerator(); gen.Coin = (int)_CoinButton.Tag; gen.Level = (int)_LevelButton.Tag; gen.Items = (int)_ItemsButton.Tag; gen.Goods = (int)_GoodsButton.Tag; t = gen.Generate(); } _GeneratedHtml = TreasureHtmlCreator.CreateHtml(t); _WebView.LoadHtmlString(_GeneratedHtml, new NSUrl("http://localhost")); }
void GenerateItems() { TreasureGenerator.RandomItemType types = TreasureGenerator.RandomItemType.None; if (GenBoxChecked(Resource.Id.magicalArmorBox)) { types |= TreasureGenerator.RandomItemType.MagicalArmor; } if (GenBoxChecked(Resource.Id.magicalWeaponBox)) { types |= TreasureGenerator.RandomItemType.MagicalWeapon; } if (GenBoxChecked(Resource.Id.potionBox)) { types |= TreasureGenerator.RandomItemType.Potion; } if (GenBoxChecked(Resource.Id.ringBox)) { types |= TreasureGenerator.RandomItemType.Ring; } if (GenBoxChecked(Resource.Id.rodBox)) { types |= TreasureGenerator.RandomItemType.Rod; } if (GenBoxChecked(Resource.Id.staffBox)) { types |= TreasureGenerator.RandomItemType.Staff; } if (GenBoxChecked(Resource.Id.wandBox)) { types |= TreasureGenerator.RandomItemType.Wand; } if (GenBoxChecked(Resource.Id.wondrousItemBox)) { switch (_ItemLevel) { case 0: types |= TreasureGenerator.RandomItemType.MinorWondrous; break; case 1: types |= TreasureGenerator.RandomItemType.MediumWondrous; break; case 2: types |= TreasureGenerator.RandomItemType.MajorWondrous; break; } } TreasureGenerator gen = new TreasureGenerator(); Treasure t = new Treasure(); for (int i = 0; i < _ItemCount; i++) { t.Items.Add(gen.GenerateRandomItem((ItemLevel)_ItemLevel, types)); } _LastTreasure = t; ShowLastTreasure(); }
public void OnStageStart() { // 적 전부를 삭제. GameObject[] enemys = GameObject.FindGameObjectsWithTag("Enemy"); for (int i = 0; i < enemys.Length; i++) { Destroy(enemys[i]); } // 그 외 오브젝트 삭제. TreasureGenerator treasureGenInst = FindObjectOfType(typeof(TreasureGenerator)) as TreasureGenerator; if (treasureGenInst != null) { Destroy(treasureGenInst.gameObject); } GameObject.Find("Map").SendMessage("OnStageStart"); if (!DISABLE_MONSTER_SPAWN) { // 적 스폰. for (int i = 1; i < 5; i++) { Vector3 pos = m_map.GetSpawnPoint(i); if (pos == Vector3.zero) { // 이 타입의 적은 만들지 않는다. continue; } GameObject e = (GameObject)Instantiate(m_enemyPrefab, pos, Quaternion.identity); MonsterCtrl mc = e.GetComponent <MonsterCtrl>(); mc.m_aiType = (MonsterCtrl.AI_TYPE)((int)MonsterCtrl.AI_TYPE.TRACER + i - 1); mc.SetSpawnPosition(m_map.GetSpawnPoint(Map.SPAWN_POINT_TYPE.BLOCK_SPAWN_POINT_PLAYER + i)); mc.SetDifficulty(m_stageNo); mc.SendMessage("OnStageStart"); } } // 스테이지 번호 갱신. Hud.get().SetStageNumber(m_stageNo); // 보물 스폰. Vector3 trasurePos = m_map.GetSpawnPoint(Map.SPAWN_POINT_TYPE.BLOCK_SPAWN_TREASURE); if (trasurePos != Vector3.zero) { Instantiate(m_treasureGen, trasurePos, Quaternion.identity); } Hud.get().DrawStageClear(false); GameObject.Find("Player").SendMessage("OnStageStart"); Hud.get().DrawStageStart(true); HitStop(true); // BGM 재생. m_audio.StopAll(); m_audio.PlayLoop(m_bgmClip, 1.0f, 0.0f); StartCoroutine("StageStartWait"); }
public void Start() { tg = GameObject.FindGameObjectWithTag("Generator").GetComponent <TreasureGenerator>(); item = tg.RandomItem(); }