// Token: 0x060038D2 RID: 14546 RVA: 0x0019FDC4 File Offset: 0x0019E1C4 private static void onClickedResponseButton(SleekButton button) { byte index = (byte)PlayerNPCDialogueUI.responseBox.search(button); DialogueResponse dialogueResponse = PlayerNPCDialogueUI.responses[(int)index]; DialogueAsset dialogueAsset = (DialogueAsset)Assets.find(EAssetType.NPC, dialogueResponse.dialogue); QuestAsset questAsset = (QuestAsset)Assets.find(EAssetType.NPC, dialogueResponse.quest); if (questAsset != null) { PlayerNPCDialogueUI.close(); PlayerNPCQuestUI.open(questAsset, dialogueResponse, dialogueAsset, PlayerNPCDialogueUI.dialogue, (Player.player.quests.getQuestStatus(dialogueResponse.quest) != ENPCQuestStatus.READY) ? EQuestViewMode.BEGIN : EQuestViewMode.END); } else { VendorAsset vendorAsset = (VendorAsset)Assets.find(EAssetType.NPC, dialogueResponse.vendor); if (vendorAsset != null) { PlayerNPCDialogueUI.close(); PlayerNPCVendorUI.open(vendorAsset, dialogueResponse, dialogueAsset, PlayerNPCDialogueUI.dialogue); } else { PlayerNPCDialogueUI.registerResponse(PlayerNPCDialogueUI.dialogue, dialogueResponse); if (dialogueAsset != null) { PlayerNPCDialogueUI.updateDialogue(dialogueAsset, PlayerNPCDialogueUI.dialogue); } else { PlayerNPCDialogueUI.close(); PlayerLifeUI.open(); } } } }
// Token: 0x060038E0 RID: 14560 RVA: 0x001A1321 File Offset: 0x0019F721 public static void open(VendorAsset newVendor, DialogueResponse newResponse, DialogueAsset newDialogue, DialogueAsset newPrevDialogue) { if (PlayerNPCVendorUI.active) { return; } PlayerNPCVendorUI.active = true; PlayerNPCVendorUI.updateVendor(newVendor, newResponse, newDialogue, newPrevDialogue); PlayerNPCVendorUI.container.lerpPositionScale(0f, 0f, ESleekLerp.EXPONENTIAL, 20f); }
// Token: 0x060038E3 RID: 14563 RVA: 0x001A1398 File Offset: 0x0019F798 private static void updateVendor(VendorAsset newVendor, DialogueResponse newResponse, DialogueAsset newDialogue, DialogueAsset newPrevDialogue) { PlayerNPCVendorUI.vendor = newVendor; PlayerNPCVendorUI.response = newResponse; PlayerNPCVendorUI.dialogue = newDialogue; PlayerNPCVendorUI.prevDialogue = newPrevDialogue; if (PlayerNPCVendorUI.vendor == null) { return; } PlayerNPCVendorUI.nameLabel.text = PlayerNPCVendorUI.vendor.vendorName; string text = PlayerNPCVendorUI.vendor.vendorDescription; text = text.Replace("<br>", "\n"); PlayerNPCVendorUI.descriptionLabel.text = text; PlayerNPCVendorUI.buttons.Clear(); PlayerNPCVendorUI.buying.Clear(); byte b = 0; while ((int)b < PlayerNPCVendorUI.vendor.buying.Length) { VendorBuying vendorBuying = PlayerNPCVendorUI.vendor.buying[(int)b]; if (vendorBuying.areConditionsMet(Player.player)) { PlayerNPCVendorUI.buying.Add(vendorBuying); } b += 1; } PlayerNPCVendorUI.buying.Sort(PlayerNPCVendorUI.buyingComparator); PlayerNPCVendorUI.buyingBox.isVisible = (PlayerNPCVendorUI.buying.Count > 0); PlayerNPCVendorUI.buyingBox.remove(); int num = 0; byte b2 = 0; while ((int)b2 < PlayerNPCVendorUI.buying.Count) { VendorBuying newElement = PlayerNPCVendorUI.buying[(int)b2]; SleekVendor sleekVendor = new SleekVendor(newElement); sleekVendor.positionOffset_Y = num; sleekVendor.sizeOffset_X = -30; sleekVendor.sizeScale_X = 1f; SleekButton sleekButton = sleekVendor; if (PlayerNPCVendorUI.< > f__mg$cache0 == null) { PlayerNPCVendorUI.< > f__mg$cache0 = new ClickedButton(PlayerNPCVendorUI.onClickedBuyingButton); } sleekButton.onClickedButton = PlayerNPCVendorUI.< > f__mg$cache0; PlayerNPCVendorUI.buyingBox.add(sleekVendor); num += sleekVendor.sizeOffset_Y; PlayerNPCVendorUI.buttons.Add(sleekVendor); b2 += 1; } PlayerNPCVendorUI.buyingBox.area = new Rect(0f, 0f, 5f, (float)num); PlayerNPCVendorUI.selling.Clear(); byte b3 = 0; while ((int)b3 < PlayerNPCVendorUI.vendor.selling.Length) { VendorSelling vendorSelling = PlayerNPCVendorUI.vendor.selling[(int)b3]; if (vendorSelling.areConditionsMet(Player.player)) { PlayerNPCVendorUI.selling.Add(vendorSelling); } b3 += 1; } PlayerNPCVendorUI.selling.Sort(PlayerNPCVendorUI.sellingComparator); PlayerNPCVendorUI.sellingBox.isVisible = (PlayerNPCVendorUI.selling.Count > 0); PlayerNPCVendorUI.sellingBox.remove(); int num2 = 0; byte b4 = 0; while ((int)b4 < PlayerNPCVendorUI.selling.Count) { VendorSelling newElement2 = PlayerNPCVendorUI.selling[(int)b4]; SleekVendor sleekVendor2 = new SleekVendor(newElement2); sleekVendor2.positionOffset_Y = num2; sleekVendor2.sizeOffset_X = -30; sleekVendor2.sizeScale_X = 1f; SleekButton sleekButton2 = sleekVendor2; if (PlayerNPCVendorUI.< > f__mg$cache1 == null) { PlayerNPCVendorUI.< > f__mg$cache1 = new ClickedButton(PlayerNPCVendorUI.onClickedSellingButton); } sleekButton2.onClickedButton = PlayerNPCVendorUI.< > f__mg$cache1; PlayerNPCVendorUI.sellingBox.add(sleekVendor2); num2 += sleekVendor2.sizeOffset_Y; PlayerNPCVendorUI.buttons.Add(sleekVendor2); b4 += 1; } PlayerNPCVendorUI.sellingBox.area = new Rect(0f, 0f, 5f, (float)num2); }