public bool CheckIsInsideGrid(Vector2 pos)

    {

        return ((int)pos.x >= 0 && (int)pos.x < gridWidth && (int)pos.y >= 0);

    }


    public Vector2 Round (Vector2 pos)

    {

        return new Vector2(Mathf.Round(pos.x), Mathf.Round(pos.y));

    }


이 두 문장이 뭔 소린지 도저히 이해가 안 됩니다. 그리고 제가 이해하고 있는 것이 맞는지 한 번만 봐주세요 ㅠ

첫문장에서 질문 
public -> 다른 스크립트에 공유 가능?
bool -> true,false 값을 반환한다
(Vector2 pos) -> 매개변수
return  -> ()안에 값을 반환한다.
(int) -> 뭐지?? 이게 뭘까요?

두번째 문장에서 질문
Vector2 앞에 new는 왜/언제 붙는 걸까요? 가끔 보면 안 붙을 때도 있고 붙을 때도 있어서 헷갈립니다 ㅠ

아 그리고 함수를 만들다 보면 매개변수를 어떻게 정해야 하는지 어떻게 알 수 있을까요?ㅠ 제발 도와주세요ㅠ