Exemple #1
0
    public void Init(ProjectileSpellBookBuilder builder)
    {
        name = builder.name;

        source = builder.source;
        caster = builder.caster;
        if (source == ProjectileSpellBookBuilder.spellSource.player)
        {
            spellBuilder = builder;
            caster       = GameObject.FindGameObjectWithTag("Player");
        }
        thrown = builder.GetRune().IsThrown();
        MakeTriggerEvent(builder);

        chaos          = builder.page.GetChaos();
        coolDown       = builder.page.GetCoolDown();
        reloadTime     = builder.page.GetReloadTime();
        loadSize       = builder.page.GetCharges();
        moveSpeedMod   = builder.page.GetMoveSpeed();
        layerMaskNames = builder.GetLayers();
        CheckOutProj(builder);

        if ((source == ProjectileSpellBookBuilder.spellSource.player))
        {
            cost = builder.CalculateCost();
            setCharges();
        }
    }
Exemple #2
0
    public void InitBook(ProjectileSpellBookBuilder builder, ProjectileSpellBookBuilder newBuilder, SpellGrid spellGrid)
    {
        oldBuilder             = newBuilder;
        stats.builder          = newBuilder;
        spellGrid.GridChanged += stats.UpdateStats;

        SpellComponent.SubSpellComponentType type = SpellComponent.SubSpellComponentType.Rune;
        InitType(type, builder);
        int index = playerInventory.ownedComponents[type].FindIndex(delegate(string s) { return(s == builder.GetRune().GetTitle()); });

        if (index >= 0)
        {
            CompIndexSelected(index);
        }
        else
        {
            Debug.LogError("Cant find that in the option list " + builder.GetRune().GetTitle());
        }

        type = SpellComponent.SubSpellComponentType.language;
        InitType(type, builder);
        index = playerInventory.ownedComponents[type].FindIndex(delegate(string s) { return(s == builder.lang.GetTitle()); });
        if (index >= 0)
        {
            CompIndexSelected(index);
        }
        else
        {
            Debug.LogError("Cant find that in the option list " + builder.lang.GetTitle());
        }

        type = SpellComponent.SubSpellComponentType.Paper;
        InitType(type, builder);
        index = playerInventory.ownedComponents[type].FindIndex(delegate(string s) { return(s == builder.page.GetTitle()); });
        if (index >= 0)
        {
            CompIndexSelected(index);
        }
        else
        {
            Debug.LogError("Cant find that in the option list " + builder.page.GetTitle());
        }

        type = SpellComponent.SubSpellComponentType.Ink;
        InitType(type, builder);
        CompIndexSelected(0);
        ChangeLayOut(layOuts.Count - 1);
        stats.UpdateStats();
        scrollbar.value = 1;
    }