示例#1
0
    public void Start()
    {
        EnemyShoot       shoot = this.GetComponent <EnemyShoot>();
        NonMonoSpellGrid grid  = new NonMonoSpellGrid(6, 6);
        Ink ink = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("FireWeedSap", SpellComponent.SubSpellComponentType.Ink)) as Ink;

        grid.SetInk(ink);
        grid.SetPixel(2, 2, true);
        grid.SetPixel(2, 3, true);
        grid.SetPixel(3, 2, true);
        grid.SetPixel(3, 3, true);
        grid.SetPixel(4, 4, true);
        grid.SetPixel(3, 4, true);
        grid.SetPixel(4, 3, true);
        grid.SetPixel(2, 4, true);
        grid.SetPixel(4, 2, true);

        grid.SetPixel(3, 1, true);
        grid.SetPixel(3, 5, true);
        grid.SetPixel(1, 3, true);
        grid.SetPixel(5, 3, true);

        ProjectileSpellBookBuilder spellBuilder = new ProjectileSpellBookBuilder(ProjectileSpellBookBuilder.spellSource.enemy);

        spellBuilder.caster = gameObject;
        spellBuilder.grid   = grid;
        spellBuilder.page   = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Paper", SpellComponent.SubSpellComponentType.Paper)) as SpellPage;
        spellBuilder.lang   = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("English", SpellComponent.SubSpellComponentType.language)) as Language;
        spellBuilder.SetRune(ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Raging Badger", SpellComponent.SubSpellComponentType.Rune)) as SpellRune);
        shoot.current_spell = spellBuilder.MakeSpellBook();
        shoot.coolDown      = spellBuilder.page.GetCoolDown();
    }
示例#2
0
    public ISpellPixel[,] GetGrid()
    {
        NonMonoSpellGrid spellGrid = new NonMonoSpellGrid(sizeX, sizeY);

        for (int x = 0; x < spellPixels.GetLength(0); x++)
        {
            for (int y = 0; y < spellPixels.GetLength(1); y++)
            {
                if (spellPixels[x, y].IsActive())
                {
                    spellGrid.SetInk(spellPixels[x, y].GetInk());
                    spellGrid.SetPixel(x, y, true);
                }
            }
        }
        return(spellGrid.GetGrid());
    }
示例#3
0
 void Awake()
 {
     GameObject.Find("Player").GetComponent <CharacterLevel>().LeveledUp += OnPlayerLevelUp;
     if (spells[0] == null)
     {
         NonMonoSpellGrid spellGrid = new NonMonoSpellGrid(4, 4);
         spellGrid.SetPixel(1, 1, true);
         spellGrid.SetPixel(1, 2, true);
         spellGrid.SetPixel(1, 3, true);
         ProjectileSpellBookBuilder builder = new ProjectileSpellBookBuilder(ProjectileSpellBookBuilder.spellSource.player);
         builder.grid = spellGrid;
         builder.lang = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("English", SpellComponent.SubSpellComponentType.language)) as Language;
         builder.SetRune(ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Raging Badger", SpellComponent.SubSpellComponentType.Rune)) as SpellRune);
         builder.page = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Paper", SpellComponent.SubSpellComponentType.Paper)) as SpellPage;
         spells[0]    = builder.MakeSpellBook();
     }
     if (spells[1] == null)
     {
         NonMonoSpellGrid spellGrid = new NonMonoSpellGrid(4, 4);
         spellGrid.SetPixel(1, 1, true);
         spellGrid.SetPixel(2, 1, true);
         spellGrid.SetPixel(1, 2, true);
         spellGrid.SetPixel(2, 2, true);
         ProjectileSpellBookBuilder builder = new ProjectileSpellBookBuilder(ProjectileSpellBookBuilder.spellSource.player);
         builder.grid = spellGrid;
         builder.lang = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("English", SpellComponent.SubSpellComponentType.language)) as Language;
         builder.SetRune(ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Bomb", SpellComponent.SubSpellComponentType.Rune)) as SpellRune);
         builder.page = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Paper", SpellComponent.SubSpellComponentType.Paper)) as SpellPage;
         spells[1]    = builder.MakeSpellBook();
     }
     if (basicSpell == null)
     {
         NonMonoSpellGrid spellGrid = new NonMonoSpellGrid(4, 4);
         spellGrid.SetPixel(2, 2, true);
         ProjectileSpellBookBuilder builder = new ProjectileSpellBookBuilder(ProjectileSpellBookBuilder.spellSource.player);
         builder.grid = spellGrid;
         builder.lang = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("English", SpellComponent.SubSpellComponentType.language)) as Language;
         builder.SetRune(ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Basic", SpellComponent.SubSpellComponentType.Rune)) as SpellRune);
         builder.page = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Paper", SpellComponent.SubSpellComponentType.Paper)) as SpellPage;
         basicSpell   = builder.MakeSpellBook();
     }
     SpellChanged(spells[currentSpell]);
 }
示例#4
0
    public SpellBook SpellBookRain(ISpellGrid fgrid)
    {
        NonMonoSpellGrid grid = new NonMonoSpellGrid(6, 6);
        Ink ink = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("FireWeedSap", SpellComponent.SubSpellComponentType.Ink)) as Ink;

        grid.SetInk(ink);
        grid.SetPixel(2, 2, true);
        grid.SetPixel(2, 3, true);
        grid.SetPixel(2, 4, true);


        ProjectileSpellBookBuilder spellBuilder = new ProjectileSpellBookBuilder(ProjectileSpellBookBuilder.spellSource.player);

        //spellBuilder.caster = ;
        spellBuilder.grid = grid;
        spellBuilder.page = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Paper", SpellComponent.SubSpellComponentType.Paper)) as SpellPage;
        spellBuilder.lang = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("English", SpellComponent.SubSpellComponentType.language)) as Language;
        spellBuilder.SetRune(ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Raging Badger", SpellComponent.SubSpellComponentType.Rune)) as SpellRune);
        return(spellBuilder.MakeSpellBook());
    }
示例#5
0
    public void Start()
    {
        EnemyShoot       shoot = this.GetComponent <EnemyShoot>();
        NonMonoSpellGrid grid  = new NonMonoSpellGrid(6, 6);
        Ink ink = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("SootExtract", SpellComponent.SubSpellComponentType.Ink)) as Ink;

        grid.SetInk(ink);
        grid.SetPixel(2, 2, true);
        grid.SetPixel(2, 3, true);
        grid.SetPixel(3, 2, true);
        grid.SetPixel(3, 3, true);

        ProjectileSpellBookBuilder spellBuilder = new ProjectileSpellBookBuilder(ProjectileSpellBookBuilder.spellSource.enemy);

        spellBuilder.grid = grid;
        spellBuilder.page = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("Cotton", SpellComponent.SubSpellComponentType.Paper)) as SpellPage;
        spellBuilder.lang = ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("English", SpellComponent.SubSpellComponentType.language)) as Language;
        spellBuilder.SetRune(ComponentLoader.GetInstance().LoadComponent(new ComponentLoader.UnLoadedSpellComponent("BullFrog", SpellComponent.SubSpellComponentType.Rune)) as SpellRune);
        shoot.current_spell = spellBuilder.MakeSpellBook();
        shoot.coolDown      = spellBuilder.page.GetCoolDown();
        Debug.Log("Cooldown " + shoot.coolDown);
    }