block load
{
  es_xmath mb_charload + 10
}
block twin
{
  if (server_var(mb_currentability) == 1) do
  {
    es_xset mb_twininvis 35
    if (server_var(mb_focus) > 1) do
    {
      es_formatv mb_formatmsg "#lightgreen[Ability Level %1] #defaultYou bend light around you.  You are #green80% #defaultinvisible" mb_currentability
      es_tell server_var(mb_userid) #multi server_var(mb_formatmsg)
      es_xdoblock mb_matrix/characters/twin/twin_execute
    }
    else do
    {
      es_tell server_var(mb_userid) #multi #lightgreen[Failure] #defaultYou need 2 focus points to #greenPhase.
    }
  }
  else do
  {
    if (server_var(mb_currentability) == 2) do
    {
      es_xset mb_twininvis 30
      if (server_var(mb_focus) > 1) do
      {
        es_formatv mb_formatmsg "#lightgreen[Ability Level %1] #defaultYou bend light around you.  You are #green85% #defaultinvisible" mb_currentability
        es_tell server_var(mb_userid) #multi server_var(mb_formatmsg)
        es_xdoblock mb_matrix/characters/twin/twin_execute
      }
      else do
      {
        es_tell server_var(mb_userid) #multi #lightgreen[Failure] #defaultYou need 2 focus points to #greenPhase.
      }
    }
    else do
    {
      if (server_var(mb_currentability) == 3) do
      {
        es_xset mb_twininvis 25
        if (server_var(mb_focus) > 1) do
        {
          es_formatv mb_formatmsg "#lightgreen[Ability Level %1] #defaultYou bend light around you.  You are #green90% #defaultinvisible" mb_currentability
          es_tell server_var(mb_userid) #multi server_var(mb_formatmsg)
          es_xdoblock mb_matrix/characters/twin/twin_execute
        }
        else do
        {
          es_tell server_var(mb_userid) #multi #lightgreen[Failure] #defaultYou need 2 focus points to #greenPhase.
        }
      }
      else do
      {
        if (server_var(mb_currentability) == 4) do
        {
          es_xset mb_twininvis 20
          if (server_var(mb_focus) > 1) do
          {
            es_formatv mb_formatmsg "#lightgreen[Ability Level %1] #defaultYou bend light around you.  You are #green93% #defaultinvisible" mb_currentability
            es_tell server_var(mb_userid) #multi server_var(mb_formatmsg)
            es_xdoblock mb_matrix/characters/twin/twin_execute
          }
          else do
          {
            es_tell server_var(mb_userid) #multi #lightgreen[Failure] #defaultYou need 2 focus points to #greenPhase.
          }
        }
        else do
        {
          if (server_var(mb_currentability) == 5) do
          {
            es_xset mb_twininvis 13
            if (server_var(mb_focus) > 1) do
            {
              es_formatv mb_formatmsg "#lightgreen[Ability Level %1] #defaultYou bend light around you.  You are #green97% #defaultinvisible" mb_currentability
              es_tell server_var(mb_userid) #multi server_var(mb_formatmsg)
              es_xdoblock mb_matrix/characters/twin/twin_execute
            }
            else do
            {
              es_tell server_var(mb_userid) #multi #lightgreen[Failure] #defaultYou need 2 focus points to #greenPhase.
            }
          }
        }
      }
    }
  }
}
block twin_execute
{
  if (server_var(mb_dead) == 0) do
  {
    es_keysetvalue Matrix server_var(mb_steamid) invis 1
    es est_SetPlayerColor server_var(mb_userid) 0 0 0 255 1
    es est_SetPlayerColor server_var(mb_userid) 0 0 0 server_var(mb_twininvis) 1
    es_xmath mb_focus - 2
    if (server_var(mb_count) >= server_var(mb_ability_exp_players)) do
    {
      if (server_var(mb_currentability) == 1) do
      {
        es_xmath mb_count float
        es_xmath mb_count * .7
        es est_trimdecimal mb_trimdec server_var(mb_count) 2
      }
      else do
      {
        if (server_var(mb_currentability) == 2) do
        {
          es_xmath mb_count float
          es_xmath mb_count * .5
          es est_trimdecimal mb_trimdec server_var(mb_count) 2
        }
        else do
        {
          if (server_var(mb_currentability) == 3) do
          {
            es_xmath mb_count float
            es_xmath mb_count * .4
            es est_trimdecimal mb_trimdec server_var(mb_count) 2
          }
          else do
          {
            if (server_var(mb_currentability) == 4) do
            {
              es_xmath mb_count float
              es_xmath mb_count * .3
              es est_trimdecimal mb_trimdec server_var(mb_count) 2
            }
            else do
            {
              if (server_var(mb_currentability) == 5) do
              {
                es_xmath mb_count float
                es_xmath mb_count * .1
                es est_trimdecimal mb_trimdec server_var(mb_count) 2
              }
            }
          }
        }
      }
    }
  }
  else do
  {
    es_tell server_var(mb_userid) #multi #lightgreen[Failure] #defaultYou cannot use abilities while dead.
  }
}

