Example #1
0
	// 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();
	}
Example #2
0
 void Start()
 {
     character = Storage.LoadById <RPGNPC>(ID, new RPGNPC());
 }
Example #3
0
	protected override void StartNewIItem()
	{
		currentItem = new RPGNPC();
	}
Example #4
0
    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;
    }
Example #5
0
 protected override void StartNewIItem()
 {
     currentItem = new RPGNPC();
 }
Example #6
0
	//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);
    }
Example #7
0
 void Start()
 {
     character = Storage.LoadById<RPGNPC>(ID, new RPGNPC());
 }