// Use this for initialization void Start () { myPhotonView = GetComponent<PhotonView>(); construction = Storage.LoadById<RPGConstruction>(ID, new RPGConstruction()); constructedNPC = Storage.LoadById<RPGNPC>(NPCID, new RPGNPC()); if(construction != null) { GameObject.FindGameObjectWithTag("WorldManager").GetComponent<WorldManager>().AddConstruction(construction); } for (int i = 0; i < construction.requiredItems.Count; i++) { if(construction.requiredItems[i].PreffixTarget == PreffixType.ITEM) { InventoryItem newInventoryItem = new InventoryItem(); newInventoryItem.GenerateNewInventoryItem(Storage.LoadById<RPGItem>(construction.requiredItems[i].TaskTarget, new RPGItem()), construction.requiredItems[i].Tasklevel, construction.requiredItems[i].AmountToReach); requiredItems.Add(newInventoryItem); requiredItemsQuantity.Add(construction.requiredItems[i].AmountToReach); } } if(trigger) { triggerCollider = trigger.GetComponent<Collider>(); trigger.transform.localScale = startScale; } dragDropCollider.enabled = false; if(!PhotonNetwork.isMasterClient) RequestConstructionUpdate(); }
void Start() { character = Storage.LoadById <RPGNPC>(ID, new RPGNPC()); }
protected override void StartNewIItem() { currentItem = new RPGNPC(); }
protected override void EditPart() { RPGNPC s = (RPGNPC)currentItem; s.ShopID = EditorUtils.IntPopup(s.ShopID, Data.shopEditor.items, "Shop"); EditorGUILayout.Separator(); EditorGUILayout.BeginHorizontal(); if (GUILayout.Button("No shop", GUILayout.Width(150))) { s.ShopID = 0; } EditorGUILayout.EndHorizontal(); /*ConditionsUtils.Conditions(s.ShopConditions, Data); * * s.SpellShopID = EditorUtils.IntPopup(s.SpellShopID, Data.spellShop.items, "Spell shop"); * * EditorGUILayout.Separator(); * EditorGUILayout.BeginHorizontal(); * if (GUILayout.Button("No spell shop", GUILayout.Width(150))) * { * s.SpellShopID = 0; * } * EditorGUILayout.EndHorizontal(); * * ConditionsUtils.Conditions(s.SpellShopConditions, Data); * * EditorGUILayout.Separator(); * EditorGUILayout.BeginHorizontal(); * * EditorGUILayout.PrefixLabel("Repair"); * s.Repairing = EditorGUILayout.Toggle(s.Repairing, GUILayout.Width(100)); * if (s.Repairing) * { * EditorGUILayout.PrefixLabel("Price modifier"); * s.RepairPriceModifier = EditorGUILayout.FloatField(s.RepairPriceModifier ,GUILayout.Width(200)); * * EditorGUILayout.PrefixLabel("Currency"); * s.RepairCurrencyID = EditorGUILayout.IntField(s.RepairCurrencyID ,GUILayout.Width(200)); * } * EditorGUILayout.EndHorizontal(); * * ConditionsUtils.Conditions(s.ReparingConditions, Data); * * EditorUtils.Label("Guild"); * * s.IsGuildMember = EditorUtils.Toggle(s.IsGuildMember, "Guild"); * * if (s.IsGuildMember) * { * s.GuildID = EditorUtils.IntPopup(s.GuildID, Data.guildEditor.items, "Guild ID"); * * s.IsRecruit = EditorUtils.Toggle(s.IsRecruit, "Can recruit"); * * s.AdvanceRankLevel = EditorUtils.IntField(s.AdvanceRankLevel, "Advance to rank"); * } * * EditorUtils.Label("General conversation"); * * EditorGUILayout.BeginHorizontal(); * * if (GUILayout.Button("Add new conversation ID", GUILayout.Width(300))) * { * s.GeneralConversationID.Add(0); * } * * EditorGUILayout.EndHorizontal(); * * for (int index = 0; index <= s.GeneralConversationID.Count -1; index++) * { * * s.GeneralConversationID[index] = EditorUtils.IntPopup(s.GeneralConversationID[index], Data.conversationEditor.items, "Conversation ID", 200, FieldTypeEnum.BeginningOnly); * * if (GUILayout.Button("Delete", GUILayout.Width(150))) * { * s.GeneralConversationID.Remove(s.GeneralConversationID[index]); * break; * } * EditorGUILayout.EndHorizontal(); * }*/ currentItem = s; }
//public PhotonView myPhotonView; void Start() { if(trigger) { triggerCollider = trigger.GetComponent<Collider>(); triggerCollider.enabled = false; trigger.transform.localScale = startScale; } character = GeneralData.GetNPCByID(ID); foreach(NPCActivityData ad in character.activities) { if(ad.activityType == NPCActivityType.Minigame) { NPCMinigame minigame = Storage.LoadById<NPCMinigame>(ad.activityID, new NPCMinigame()); Debug.Log(minigame.activityType.ToString()); activities.Add(minigame); GameObject.FindGameObjectWithTag("WorldManager").GetComponent<WorldManager>().AddMinigame(minigame); Debug.Log("added minigame"); } else if(ad.activityType == NPCActivityType.Quest) { NPCQuest quest = Storage.LoadById<NPCQuest>(ad.activityID, new NPCQuest()); activities.Add(quest); } else if(ad.activityType == NPCActivityType.Shop) { Shop shop = Storage.LoadById<Shop>(ad.activityID, new Shop()); shop.PopulateItems(); activities.Add(shop); } else if(ad.activityType == NPCActivityType.Service) { NPCService service = Storage.LoadById<NPCService>(ad.activityID, new NPCService()); activities.Add(service); } else if(ad.activityType == NPCActivityType.Arena) { NPCArena arena = Storage.LoadById<NPCArena>(ad.activityID, new NPCArena()); arena.LoadArena(); arena.activityType = NPCActivityType.Arena; activities.Add(arena); } else if(ad.activityType == NPCActivityType.Teleporter) { NPCActivity teleporter = new NPCActivity(); teleporter.activityType = NPCActivityType.Teleporter; teleporter.Name = "Teleporter"; activities.Add(teleporter); } else if(ad.activityType == NPCActivityType.Construction) { RPGConstruction construction = Storage.LoadById<RPGConstruction>(ad.activityID, new RPGConstruction()); activities.Add(construction); } } for (int i = 0; i < activities.Count; i++) { activities[i].LoadConversation(); } GameObject.FindGameObjectWithTag("WorldManager").GetComponent<WorldManager>().AddNPC(this); }
void Start() { character = Storage.LoadById<RPGNPC>(ID, new RPGNPC()); }