Ejemplo n.º 1
0
 /*public static void UseMove(Monster.SubMonster atk, Monster.SubMonster def, Move.SubMove themove)
  * {
  *  double dam = 0;
  *  double origdam = 0;
  *  int paracheck = 100;
  *  int numhits = 0;
  *  bool multihit = false;
  *  bool movefailed = false;
  *
  *
  *  TheQueue.AddQueue(atk.Name + " used " + themove.Name + "!");
  *
  *  if (atk.status.Contains(Monster.Status.paralyze) || atk.status.Contains(Monster.Status.frozen))
  *  {
  *      paracheck = (int)UnityEngine.Random.Range((int)0, (int)3);
  *      if (paracheck != 0)
  *      {
  *          TheQueue.AddQueue(atk.Name + "'s status prevented it from moving!");
  *          return;
  *      }
  *  }
  *
  *  else if (atk.status.Contains(Monster.Status.asleep))
  *  {
  *      if ((int)UnityEngine.Random.Range((int)0, (int)5) == 0)
  *      {
  *          TheQueue.AddQueue(atk.Name + " is still sleeping!");
  *          TheQueue.AddQueue(atk.Name + " just woke up");
  *          atk.SetStatus(Monster.Status.none, 1);
  *
  *      }
  *      else
  *      {
  *          TheQueue.AddQueue(atk.Name + " is still sleeping!");
  *          return;
  *      }
  *  }
  *
  *  themove.Use();
  *
  *  if (def.status.Contains(Monster.Status.evading))
  *  {
  *      if ((themove.dodamage || (!themove.self && themove.status != Monster.Status.none)))
  *      {
  *          if ((int)UnityEngine.Random.Range((int)0, (int)4) > 0)
  *          {
  *              TheQueue.AddQueue(def.Name + " evaded the move!");
  *              if (themove.hurtself)
  *              {
  *
  *                  TheQueue.AddQueue(atk.Name + " hurt itself!");
  *                  TheQueue.AddQueue("It caused " + themove.hurtselfdam + " damage!");
  *                  //health bar animation
  *                  atk.Damage(themove.hurtselfdam);
  *                  if (atk.isDead())
  *                      TheQueue.AddQueue(atk.Name + " died!!!");
  *              }
  *              return;
  *          }
  *      }
  *  }
  *
  *  if (themove.multihit && UnityEngine.Random.Range(0, 100f) < themove.MHP)
  *  {
  *      multihit = true;
  *      TheQueue.AddQueue("Multi hit move!");
  *  }
  *
  *  if (themove.Hit())
  *  {
  *      if (themove.dodamage)
  *      {
  *          dam = themove.GiveDam();
  *          dam *= (1 + (atk.ATK / 200));
  *          //dam = System.Math.Round(dam, 2);
  *          if (atk.status.Contains(Monster.Status.doubled))
  *          {
  *              dam *= 2;
  *              TheQueue.AddQueue(atk.Name + "'s status caused double damage!");
  *          }
  *          else if (atk.status.Contains(Monster.Status.halved))
  *          {
  *              dam *= .5;
  *              TheQueue.AddQueue(atk.Name + "'s status caused half damage!");
  *          }
  *          else if (atk.status.Contains(Monster.Status.high))
  *          {
  *              dam *= .7;
  *              TheQueue.AddQueue(atk.Name + "'s status caused reduced damage!");
  *          }
  *          else if (atk.status.Contains(Monster.Status.mixedup))
  *          {
  *              if ((int)UnityEngine.Random.Range((int)0, (int)2) == 0)
  *              {
  *                  TheQueue.AddQueue(atk.Name + " hurt itself instead!");
  *                  atk.Damage(dam);
  *                  TheQueue.AddQueue("It did " + dam + " damage!");
  *                  movefailed = true;
  *              }
  *          }
  *
  *          if (def.status.Contains(Monster.Status.annoyed)&&!movefailed)
  *          {
  *              //print("poopoo");
  *              dam *= 1.4;
  *              TheQueue.AddQueue(def.Name + "'s status caused increased damage!");
  *          }
  *          else if (def.status.Contains(Monster.Status.cold)&&!movefailed)
  *          {
  *              dam *= 1.4;
  *              TheQueue.AddQueue(def.Name + "'s status caused increased damage!");
  *          }
  *      }
  *
  *      if (!movefailed)
  *      {
  *          dam = Math.Round(dam, 2);
  *          origdam = dam;
  *          //def.ReceiveDam(atk, themove, dam);
  *
  *          if (multihit)
  *          {
  *              numhits = 2;
  *              dam = origdam * (double)UnityEngine.Random.Range(.9f, 1.1f);
  *              dam = Math.Round(dam, 2);
  *              //def.ReceiveDam(atk, themove, dam);
  *              if (themove.maxhits > 2)
  *              {
  *                  for (int i = 3; i <= themove.maxhits; i++)
  *                  {
  *                      if (UnityEngine.Random.Range(0, 100f) < themove.MHP)
  *                      {
  *                          dam = origdam * (double)UnityEngine.Random.Range(.8f, 1.2f);
  *                          dam = Math.Round(dam, 2);
  *                          //def.ReceiveDam(atk, themove, dam);
  *                          numhits = i;
  *                      }
  *                      else break;
  *                  }
  *              }
  *              TheQueue.AddQueue(numhits + " hits!");
  *          }
  *      }
  *
  *      if (def.isDead())
  *      {
  *          TheQueue.AddQueue(def.Name + " died!!!");
  *
  *      }
  *      if (atk.isDead())
  *      {
  *          TheQueue.AddQueue(atk.Name + " died!!!");
  *      }
  *
  *  }
  *  else
  *  {
  *      TheQueue.AddQueue(atk.Name + "'s attack missed!");
  *  }
  * }*/
 //need ???
 void Awake()
 {
     if (curInstance == null)
     {
         curInstance = this;
     }
     UnityEngine.Random.InitState((int)System.DateTime.Now.Ticks);
     p1ready = false;
     p2ready = false;
     //player1 = player1m.GetPlayer();
     //player2 = player2m.GetPlayer();
 }
Ejemplo n.º 2
0
    void OnEnable()
    {
        if (isLocalPlayer)
        {
            i = 1;
        }
        else
        {
            i = 2;
        }

        you = BMMulti.GetYou(i);

        UpSlots();
    }
Ejemplo n.º 3
0
 // Use this for initialization
 //void Start (){}
 void UpSlots()
 {
     acts = BMMulti.PlayerPick(i).moninv.ReturnActives();
     for (int i = 0; i < 3; i++)
     {
         if (acts[i] != null)
         {
             if (acts[i].Name != "")
             {
                 acticons[i].GetComponent <SpriteRenderer>().sprite = Resources.Load("MonsterSprites/" + acts[i].imagepath, typeof(Sprite)) as Sprite;
                 acticons[i].GetComponent <InvSlot>().curMonster    = acts[i];
                 texts[i].text = acts[i].Name;
                 acticons[i].GetComponent <SpriteRenderer>().color = Color.white;
                 acticons[i].GetComponent <BoxCollider>().enabled  = true;
                 if (acts[i] == BMMulti.GetYou(i))
                 {
                     acticons[i].GetComponent <SpriteRenderer>().color = Color.gray;
                     acticons[i].GetComponent <BoxCollider>().enabled  = false;
                 }
             }
             else
             {
                 texts[i].text = "";
                 acticons[i].GetComponent <BoxCollider>().enabled   = false;
                 acticons[i].GetComponent <SpriteRenderer>().sprite = null;
                 acticons[i].GetComponent <SpriteRenderer>().color  = Color.white;
                 acticons[i].GetComponent <InvSlot>().curMonster    = null;
                 acticons[i].GetComponent <InvSlot>().curItem       = null;
             }
             //acticons[i].GetComponent<InvSlot>().ISNULL = false;
         }
         else
         {
             texts[i].text = "";
             acticons[i].GetComponent <BoxCollider>().enabled   = false;
             acticons[i].GetComponent <SpriteRenderer>().sprite = null;
             acticons[i].GetComponent <SpriteRenderer>().color  = Color.white;
             acticons[i].GetComponent <InvSlot>().curMonster    = null;
             acticons[i].GetComponent <InvSlot>().curItem       = null;
             //acticons[i].GetComponent<InvSlot>().ISNULL = true;
         }
     }
 }
Ejemplo n.º 4
0
    // Use this for initialization
    void Start()
    {
        //GetComponent<PlayerMain>().SetPlayer(GameObject.Find("SinglePlayer").GetComponent<PlayerMain>().GetPlayer());

        //SaveLoad.Load(SaveCallBack);
        if (isLocalPlayer)
        {
            GetComponent <PlayerMain>().SetPlayer(GameObject.Find("SinglePlayer").GetComponent <PlayerMain>().GetPlayer());
            GetComponent <MBattlePlayer>().enabled = true;
            BMMulti.PlayerSet(GetComponent <PlayerMain>(), 1);

            //BMMulti.SetLocal(GetComponent<PlayerMain>());

            doneyet = true;
        }
        else
        {
            //BMMulti.PlayerSet(GetComponent<PlayerMain>(), 2);
            GetComponent <NetworkView>().RPC("GetOtherPlayer", RPCMode.AllBuffered, GameObject.Find("SinglePlayer").GetComponent <PlayerMain>());


            buttons.layer = 2;
            menus.layer   = 2;

            foreach (Transform child in buttons.transform)
            {
                child.gameObject.layer = 2;
            }
            foreach (Transform child in menus.transform)
            {
                child.gameObject.layer = 2;
                foreach (Transform child2 in child)
                {
                    child2.gameObject.layer = 2;
                }
            }
            doneyet = true;
        }
    }
Ejemplo n.º 5
0
 public void GetOtherPlayer(PlayerMain pmtemp)
 {
     BMMulti.PlayerSet(pmtemp, 2);
 }
Ejemplo n.º 6
0
    IEnumerator DeadYou()
    {
        if (instance.test == SM.S)
        {
            deadselect = true;
            if (BattleMain3.GetYou() != null)
            {
                if (BattleMain3.GetYou().Name != "")
                {
                    BattleMain3.Player1().moninv.RemoveMonster(BattleMain3.GetYou());
                }
            }
            BattleMain3.SetYou(new Monster.SubMonster());
            SaveLoad.Save(SaveCallBack);
            while (true)
            {
                cont = false;
                UpMenu.SetMenu(UpMenu.curMenu.mon);
                if (BattleMain3.GetYou().Name != "")
                {
                    break;
                }
                yield return(new WaitForEndOfFrame());
            }

            UpMenu.SetMenu(UpMenu.curMenu.none);
            cont = true;
            yield return(new WaitForSeconds(.01f));
        }
        else
        {
            deadselect = true;
            while (true)
            {
                cont = false;
                if (BMMulti.GetYou(1).Name == "" && BMMulti.GetYou(2).Name == "")
                {
                    BMMulti.MPlayerPick(1).transform.FindChild("MenuMother").gameObject.GetComponent <MUpMenu>().SetMenu(MUpMenu.curMenu.mon);
                    BMMulti.MPlayerPick(2).transform.FindChild("MenuMother").gameObject.GetComponent <MUpMenu>().SetMenu(MUpMenu.curMenu.mon);
                    //if (BMMulti.GetYou(1).Name != "" && BMMulti.GetYou(2).Name!="") break;
                    yield return(new WaitForEndOfFrame());
                }
                else if (BMMulti.GetYou(1).Name == "")
                {
                    BMMulti.MPlayerPick(2).transform.FindChild("MenuMother").gameObject.GetComponent <MUpMenu>().SetMenu(MUpMenu.curMenu.none);
                    BMMulti.MPlayerPick(1).transform.FindChild("MenuMother").gameObject.GetComponent <MUpMenu>().SetMenu(MUpMenu.curMenu.mon);
                    if (BMMulti.GetYou(1).Name != "")
                    {
                        break;
                    }
                    yield return(new WaitForEndOfFrame());
                }
                else if (BMMulti.GetYou(2).Name == "")
                {
                    BMMulti.MPlayerPick(1).transform.FindChild("MenuMother").gameObject.GetComponent <MUpMenu>().SetMenu(MUpMenu.curMenu.none);
                    BMMulti.MPlayerPick(2).transform.FindChild("MenuMother").gameObject.GetComponent <MUpMenu>().SetMenu(MUpMenu.curMenu.mon);
                    if (BMMulti.GetYou(2).Name != "")
                    {
                        break;
                    }
                    yield return(new WaitForEndOfFrame());
                }
            }
            BMMulti.MPlayerPick(1).transform.FindChild("MenuMother").gameObject.GetComponent <MUpMenu>().SetMenu(MUpMenu.curMenu.none);
            BMMulti.MPlayerPick(2).transform.FindChild("MenuMother").gameObject.GetComponent <MUpMenu>().SetMenu(MUpMenu.curMenu.none);
            cont = true;
            yield return(new WaitForSeconds(.01f));
        }
    }
Ejemplo n.º 7
0
    IEnumerator TextEvents()
    {
        while (true)
        {
            if (instance.test == SM.S)
            {
                if (!BattleMain3.TurnGet() && events.Count > 0 && cont)
                {
                    eventtext.text = events.Dequeue();
                    yield return(new WaitForSeconds(.5f));

                    while (!(Input.touchCount == 1 && Input.GetTouch(0).phase == TouchPhase.Began) && !Input.GetKey(KeyCode.C))
                    {
                        yield return(new WaitForEndOfFrame());
                    }

                    if (events.Count == 0)
                    {
                        if (curdead)
                        {
                            cont = false;
                            StartCoroutine("DeadYou");
                        }

                        else if (!gohome && !goadventure && !curdead && !monturn && !youturn)
                        {
                            BattleMain3.TurnSet(true);
                            eventtext.text = "";
                            textbg.SetActive(false);
                        }
                        else if (goadventure)
                        {
                            SaveLoad.Save(SaveCallBack);
                            StartCoroutine("Fader", "Adventure");
                        }
                        else if (gohome)
                        {
                            SaveLoad.Save(SaveCallBack);
                            StartCoroutine("Fader", "TownTest");
                        }
                    }
                }
                else
                {
                    yield return(new WaitForSeconds(.01f));
                }
            }
            else
            {
                if (!BMMulti.TurnGet() && events.Count > 0 && cont)
                {
                    eventtext.text = events.Dequeue();
                    yield return(new WaitForSeconds(.5f));

                    while (!(Input.touchCount == 1 && Input.GetTouch(0).phase == TouchPhase.Began) && !Input.GetKey(KeyCode.C))
                    {
                        yield return(new WaitForEndOfFrame());
                    }

                    if (events.Count == 0)
                    {
                        if (curdead)
                        {
                            cont = false;
                            StartCoroutine("DeadYou");
                        }

                        else if (!gohome && !goadventure && !curdead && !monturn && !youturn)
                        {
                            BMMulti.TurnSet(true);
                            eventtext.text = "";
                            textbg.SetActive(false);
                        }
                        else if (goadventure)
                        {
                            //SaveLoad.Save(SaveCallBack);
                            StartCoroutine("Fader", "Adventure");
                        }
                        else if (gohome)
                        {
                            //SaveLoad.Save(SaveCallBack);
                            StartCoroutine("Fader", "TownTest");
                        }
                    }
                }
                else
                {
                    yield return(new WaitForSeconds(.01f));
                }
            }
        }
    }
Ejemplo n.º 8
0
    /*public override void OnStartLocalPlayer()
     * {
     *  if (isClient) playernum = 2;
     *  else if (isServer) playernum = 1;
     *  print(playernum);
     *  BMMulti.PlayerSet(GetComponent<PlayerMain>(), playernum);
     * }*/

    void Update()
    {
        if (!doneyet)
        {
            player = GetComponent <PlayerMain>().GetPlayer();
            if (isLocalPlayer)
            {
                playernum = 1;
            }
            else
            {
                playernum = 2;
            }
            doneyet = true;
        }

        /*if (BMMulti.IsActive() && !doneyet)
         * {
         *
         *  if (isLocalPlayer) playernum = 1;
         *  else playernum = 2;
         *  //print(playernum);
         *  //print(isServer);
         *  BMMulti.PlayerSet(GetComponent<PlayerMain>(), playernum);
         *  doneyet = true;
         * }*/
        buttons.SetActive(BMMulti.TurnGet());

        if (BMMulti.TurnGet() || menumother.upnow != MUpMenu.curMenu.none)
        {
            if (Input.touchCount == 1 && onehit)
            {
                // touch on screen
                if (Input.GetTouch(0).phase == TouchPhase.Began)
                {
                    Ray        ray = Camera.main.ScreenPointToRay(Input.GetTouch(0).position);
                    RaycastHit hit = new RaycastHit();
                    moving = Physics.Raycast(ray, out hit);
                    if (moving)
                    {
                        go = hit.transform.gameObject;
                    }
                    else
                    {
                        onehit = false;
                    }
                }


                // release touch/dragging
                if ((Input.GetTouch(0).phase == TouchPhase.Ended || Input.GetTouch(0).phase == TouchPhase.Canceled || Input.touchCount != 1) && go != null && onehit)
                {
                    Ray        ray = Camera.main.ScreenPointToRay(Input.GetTouch(0).position);
                    RaycastHit hit = new RaycastHit();
                    moving = Physics.Raycast(ray, out hit);
                    if (moving)
                    {
                        go2 = hit.transform.gameObject;
                    }
                    moving = false;
                    //Debug.Log("Touch Released from : " + go.name);
                    if (go == atk && go == go2)
                    {
                        //atk menu appears
                        menumother.SetMenu(MUpMenu.curMenu.atk);
                    }
                    else if (go == chng && go == go2)
                    {
                        //active player1.moninvmenu appears
                        menumother.SetMenu(MUpMenu.curMenu.mon);
                    }

                    else if (go == esc && go == go2)
                    {
                        //DISCONNECT
                    }

                    if (go == movebuttons[0] && go2 == go)
                    {
                        menumother.SetMenu(MUpMenu.curMenu.none);
                        BMMulti.SetMove(BMMulti.GetYou(playernum).moves[0], playernum);
                        BMMulti.InitTurn(BMMulti.TurnType.attack, playernum);
                    }
                    else if (go == movebuttons[1] && go2 == go)
                    {
                        menumother.SetMenu(MUpMenu.curMenu.none);
                        BMMulti.SetMove(BMMulti.GetYou(playernum).moves[1], playernum);
                        BMMulti.InitTurn(BMMulti.TurnType.attack, playernum);
                    }
                    else if (go == movebuttons[2] && go2 == go)
                    {
                        menumother.SetMenu(MUpMenu.curMenu.none);
                        BMMulti.SetMove(BMMulti.GetYou(playernum).moves[2], playernum);
                        BMMulti.InitTurn(BMMulti.TurnType.attack, playernum);
                    }

                    if (go == monbuttons[0] && go2 == go)
                    {
                        BMMulti.SetNewMon(monbuttons[0].GetComponent <InvSlot>().curMonster, playernum);
                        UpMenu.SetMenu(UpMenu.curMenu.none);
                        if (!TheQueue.deadselect)
                        {
                            BMMulti.InitTurn(BMMulti.TurnType.change, playernum);
                        }
                        else
                        {
                            BMMulti.SetYou(monbuttons[0].GetComponent <InvSlot>().curMonster, playernum);
                            BMMulti.SetNewMon(new Monster.SubMonster(), playernum);
                            BMMulti.UpHealth();
                            TheQueue.AddQueue("You've changed to " + BMMulti.GetYou(playernum).Name + "!");
                            TheQueue.deadselect = false;
                            TheQueue.curdead    = false;
                        }
                    }
                    else if (go == monbuttons[1] && go2 == go)
                    {
                        BMMulti.SetNewMon(monbuttons[1].GetComponent <InvSlot>().curMonster, playernum);
                        UpMenu.SetMenu(UpMenu.curMenu.none);
                        if (!TheQueue.deadselect)
                        {
                            BMMulti.InitTurn(BMMulti.TurnType.change, playernum);
                        }
                        else
                        {
                            BMMulti.SetYou(monbuttons[1].GetComponent <InvSlot>().curMonster, playernum);
                            BMMulti.SetNewMon(new Monster.SubMonster(), playernum);
                            BMMulti.UpHealth();
                            TheQueue.AddQueue("You've changed to " + BMMulti.GetYou(playernum).Name + "!");
                            TheQueue.deadselect = false;
                            TheQueue.curdead    = false;
                        }
                    }
                    else if (go == monbuttons[2] && go2 == go)
                    {
                        BMMulti.SetNewMon(monbuttons[2].GetComponent <InvSlot>().curMonster, playernum);
                        UpMenu.SetMenu(UpMenu.curMenu.none);
                        if (!TheQueue.deadselect)
                        {
                            BMMulti.InitTurn(BMMulti.TurnType.change, playernum);
                        }
                        else
                        {
                            BMMulti.SetYou(monbuttons[2].GetComponent <InvSlot>().curMonster, playernum);
                            BMMulti.SetNewMon(new Monster.SubMonster(), playernum);
                            BMMulti.UpHealth();
                            TheQueue.AddQueue("You've changed to " + BMMulti.GetYou(playernum).Name + "!");
                            TheQueue.deadselect = false;
                            TheQueue.curdead    = false;
                        }
                    }
                }
            }
            else
            {
                go     = null;
                go2    = null;
                onehit = true;
            }
        }
        else
        {
            go     = null;
            go2    = null;
            onehit = true;
        }
    }