'잡다한것들전부'에 해당되는 글 207건

  1. 2014.08.07 안드로이드 gcm 관련 php 통신.
  2. 2014.08.05 안드로이드 유효성 검사하기 AsyncTask..
  3. 2014.08.04 c++ 책을 샀습니다.
  4. 2014.07.30 공부하고 싶은 것들 정리.(구글킵)
  5. 2014.07.24 c# 표준 코딩 규칙
  6. 2014.02.25 배경 생성 관련 스크립트 - BackgroundPropSpawner
  7. 2014.02.25 몬스터 관련 함수 - Enemy 스크립트
  8. 2014.02.25 점수 표현 - Score
  9. 2014.02.25 폭탄과 구급 상자 - Bomb Pickup, Bomb
  10. 2014.02.25 물체 파괴 함수 -> Destroyer 스크립트

안드로이드 gcm 관련 php 통신.

|

대강

할건 없고. 오픈소스 프로젝트의 프로젝트대로 소스 복붙하고

자기 자신의 regid 알아낸다음에 아래에 입력해주고

노티피케이션이 실행되는지만 하면 됨.


상용화될 게임에는 regid 등록해주는 부분에서 각 DB 에 regid 등록해주고

아래 php 구문을 DB에 접속해서 DB의 regid 를 모두 호출해주는 식으로 수정해주면 될거같음.

일단 확실히 되는 php 구문임..


   <?php
        // Replace with real server API key from Google APIs        
        // 서버api Key 입력

        $apiKey = "";
      
        // Replace with real client registration IDs
        // 각 핸드폰 기계의 registraitionID 입력.

        $registrationIDs = array(
        " ",

  " ",

        );
      
        // Message to be sent

        // 입력하고 싶은 메시지 입력
        $message = "Test Notificación PHP";
      
        // Set POST variables
        $url = 'https://android.googleapis.com/gcm/send';
      
        $fields = array(
            'registration_ids' => $registrationIDs,
            'data' => array( "message" => $message ),
        );
      
        $headers = array(
            'Authorization: key=' . $apiKey,
            'Content-Type: application/json'
        );
      
        // Open connection
        $ch = curl_init();
      
        // Set the url, number of POST vars, POST data
        curl_setopt( $ch, CURLOPT_URL, $url );
        curl_setopt( $ch, CURLOPT_POST, true );
        curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers);
        curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );      
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode( $fields ));
      
        // Execute post
        $result = curl_exec($ch);      
        // Close connection
        curl_close($ch);
        echo $result;
    ?>

Trackback 0 And Comment 0

안드로이드 유효성 검사하기 AsyncTask..

|


일단 대강 이런식으로 처리 해주면 될거같음..


 IabHelper.OnIabPurchaseFinishedListener mPurchaseFinishedListener = new IabHelper.OnIabPurchaseFinishedListener() {
        public void onIabPurchaseFinished(IabResult result, Purchase purchase) {

.

.

.    


  verifyPayloadTask task = new verifyPayloadTask();
            task.execute(purchase);

}

}


class verifyPayloadTask extends AsyncTask<Purchase, Void, Void> {
        boolean isVerify = false;
        Purchase purchase;
        @Override
        protected Void doInBackground(Purchase... params) {
            // TODO Auto-generated method stub
            //오류시 null 반환
            Log.d(TAG, "verifypaylaod doinBackground!");
            isVerify = true;
            purchase = params[0];
            return null;
        }

        protected void onPostExecute(Void voids) {
            Log.d(TAG,"verifyPayloadTask onPostExecute");
            if(isVerify){
                Log.d(TAG, "Purchase successful.");

                if (purchase.getSku().equals(SKU_GAS)) {
                    // bought 1/4 tank of gas. So consume it.
                    Log.d(TAG, "Purchase is gas. Starting gas consumption.");
                    mHelper.consumeAsync(purchase, mConsumeFinishedListener);
                }
            }
        }
    }

Trackback 0 And Comment 0

c++ 책을 샀습니다.

|

기존에 c++ 관련 책은 윤성우 저자의 열혈강의 c++ 밖에 가지고 있지 않았는데, 이번에 

성안당의 c++ 기초 플러스를 구입했습니다. 엄청난 양의 책 두께를 자랑한다고 하네요.

어쨌든 c++ 공부를 열심히 해야겠다는 생각을 했으니.. 열심히 하겠습니다.


'잡다한것들전부 > C, C++, C#' 카테고리의 다른 글

구글 c# 코딩 규칙  (0) 2015.04.27
컴퓨터 16진법 표시  (0) 2014.08.29
c++ 책을 샀습니다.  (0) 2014.08.04
c# 표준 코딩 규칙  (0) 2014.07.24
c언어 공부할때 참고 사이트  (0) 2014.01.15
[펌]C언어 자료구조 - 연결리스트(Linked List)  (0) 2014.01.13
Trackback 0 And Comment 0

공부하고 싶은 것들 정리.(구글킵)

|

공부방향


이펙티브 시리즈나
혹은 해골,용책 정도 밖에 생각이 나질 않아서요
물리책도 보고, AI책도 보고 그러는거죠.
리펙토링도 해보고 설계도 해보세요.
공룡책 한번 보세요. OS 에 관한책입니다.
국어, 수학, 물리, 영어
디자인패턴이나 리팩토링 Code Complete 뭐 이런 류의 책

C++(1학년): try-catch,template,다형성
데이터구조론(2학년): tree, hash, sort
데이터베이스(3학년): 제2정규화, stored procedure
운영체제론(3학년): Operating System Concepts (이른바 공룡책)의 "프로세스" 챕터
컴퓨터네트워크(3학년): OSI 3-4 level, ARQ 알고리즘
컴파일러(4학년): BNF grammar
정보보호(4학년): RSA, AES, DES

http://www.hanmadiro.com/ -무료영어
http://www.ebsi.co.kr/ebs/pot/potg/retrieveCourseH3TeacherInfo.ebs?teacherId=@*ebsint_e68&targetCode=D200
영어
http://www.ebsi.co.kr/ebs/pot/potg/retrieveCourseH3TeacherInfo.ebs?teacherId=@*09st-m02&targetCode=D300
수학

1. Direct 3D 엔진 개발을 위한 루트로, 고 기술력이 요구되는 방향의 진로
2. 게임 브리오, 언리얼등 유명 게임 엔진 유경험을 쌓아 보편적인 3D 게임 개발자로의 진로

MS SQL은
뇌를 자극하는 SQL Server 2008 - 한빛미디어






c++ 서적


- c++ 기초 플러스
- effetive c++





c# 스프라이트 툴 만들기


http://cafe.naver.com/jzsdn/25183






게임샐러드 관련 강좌


http://diyga.me/
http://blog.naver.com/hellofskill
게임샐러드책은 국내에 한권뿐

Trackback 0 And Comment 0

c# 표준 코딩 규칙

|

http://www.scribd.com/doc/163870946/C-%EC%BD%94%EB%94%A9-%ED%91%9C%EC%A4%80%EA%B3%BC-%EC%A2%8B%EC%9D%80-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%EC%8A%B5%EA%B4%80

Trackback 0 And Comment 0

배경 생성 관련 스크립트 - BackgroundPropSpawner

|


backgroundProp -> 이 변수에 각각 버스, 백조, 택시등을 넣어줄수있음


코루틴으로 Spawn() 함수를 계속 호출함


waitTime -> 다음 프리팹이 생성될 시간 랜덤값(최소시간 ~ 최대시간)

facingLeft->오른쪽에서 나올지 왼쪽에서 나올지



와; 코루틴을 사용해서 while문 돌려주고 그 안에서 propInstance 의 값을 체크해서 범위를 넘으면 삭제..

대박;


결국엔 Destroy 하면 해당 while문은 null이 되고 코루틴을 빠져나옴.




Trackback 0 And Comment 0

몬스터 관련 함수 - Enemy 스크립트

|
벌레와 우주선이 있는데요

벌레는 꼬리부분을 개별적으로 짤라주고 축을 오른족으로 두어서 꼬리의 크기를 늘렸다 줄였다하면서 애니메이션을 줄수있습니다.


둘다 Enemy 스크립트를 가지고 있지만 익스펙터에서 값을 조정해서 사용한다.











deadEnemy = 죽는 모습 스프라이트

damagedEnemy = 몬스터 공격 당할시 스프라이트

deathClips = 사운드

hundredPointsUI -> 적을 죽이면 100 생성

deathSpinMin -> 죽을때 떨어지는 각도


ren - > 몸통 렌더러

frontCheck -> 바로 앞에 있는 값 체크




Collider2D[] frontHits = Physics2D.OverlapPointAll(frontCheck.position, 1); -> 바로 앞에 있는 모든 값 체크

레이어 마스크 값이 1이면 모든 값;

그중에 Obstacle 값이면 Flip 함수실행 -> 좌우 반전

움직임 조절 rigidbody2D.velocity = new Vector2(transform.localScale.x * moveSpeed, rigidbody2D.velocity.y);


죽으면 죽는 함수 실행

if(HP <= 0 && !dead)

// ... call the death function.

Death ();




void Death() 함수


모든 스프라이트 렌더러를 불러와서 다 안보이게 한다.

그리고 바디 렌더러(ren)는 보이게 하고

그 렌더러의 스프라이트를 죽는 모습으로 변경하고

스코어를 100점 올려주고 dead 를 true 로 변경


리지드바디의 앵글을 고정시켜버린다.(떨어질때 변경되지 않도록)

AddTorque -> 함수를 사용하여 축을 중심으로 회전되게한다.


그리고 주인공 스크립트에서 했던것과 마찬가지로 모든 콜라이더를 isTrigger 처리 해줘서 적이 떨어지도록 한다

스코어는 적의 위치 바로 위에 생성되게 한다.







Trackback 0 And Comment 0

점수 표현 - Score

|

UI 의 스코어에 붙어있는 스크립트


화면 위에 있는 점수





guiText 값 변경 해주고

점수를 얻으면 Taunt 함수를호출




Trackback 0 And Comment 0

폭탄과 구급 상자 - Bomb Pickup, Bomb

|

bombCrate -> crate, parachute

FloatDown 애니(떨어질때 흔들흔들하는모션) 와 BombLanding(떨어지고 나서 낙하산이 없어지는모션) 애니로 구성되있음






landed -> 현재 땅인지 체크

폭탄은 서클 콜라이더와 박스 콜라이더로 구성되있고 서클콜라이더는 is Trigger 체크 되있음

그래서 OnTriggerEnter 함수를 호출할수잇음. 박스콜라이더는 땅과 부딪히게 할려고 부착한 상태인듯. isTrigger 시 충돌 무시해버리고 통과되기때문.


Player 와 부딪힐 경우에는 플레이어의 폭탄 개수를 늘려주고 삭제해버림.


그리고 땅과 부딪힐경우에는 else if(other.tag == "ground" && !landed)


Ladn 애니메이션을 실행시키고

Create 폭탄의 부모 오브젝트를 null값으로 만들어준다.

그리고 리지드바디를 추가시킴(추가가 안될시 플레이어와 물리효과를 집어널수없기때문,.)





explosionParticle -> 은 히어라이키에 한개만 존재함 이함수를 재활요해서 계속 사용함





폭탄관련함수

if(transform.root == transform)

StartCoroutine(BombDetonation());

플레이어가 알트 버튼을 눌러서 폭파 시킬때 실행됨 최상위 오브젝트가 없을때(Create일때) -> LayBombs 스크립트에서 실행






Explode() -> 외부에서 실행됨 폭탄이 내려오는데 플레이어가 총으로 맞춘다던가

bombLaid 를 false로 만들어줌.

pickupSpawner -> 픽업매니저 스크립트 -> PickupSpawner 구급상자와 폭탄 생성



pickupSpawner.StartCoroutine(pickupSpawner.DeliverPickup()); -> 아이템 재생성


Collider2D[] enemies = Physics2D.OverlapCircleAll(transform.position, bombRadius, 1 << LayerMask.NameToLayer("Enemies"));

반경 원안에 있는 적들 배열에 집어넣기
foreach(Collider2D en in enemies)
{
// Check if it has a rigidbody (since there is only one per enemy, on the parent).
Rigidbody2D rb = en.rigidbody2D;
if(rb != null && rb.tag == "Enemy")
{
// Find the Enemy script and set the enemy's health to zero.
rb.gameObject.GetComponent<Enemy>().HP = 0;

// Find a vector from the bomb to the enemy.
Vector3 deltaPos = rb.transform.position - transform.position;

// Apply a force in this direction with a magnitude of bombForce.
Vector3 force = deltaPos.normalized * bombForce;
rb.AddForce(force);
}
}



적들의 체력을 0으로 만들고 적들을 튕겨내버림



explosionFX.transform.position = transform.position;

explosionFX.Play();


이펙트 위치 설정 및 실행











플레이어에 붙어있는 스크립트


bombLaid -> 폭탄 발사여부 - > Explode 함수가 실행되야 false로 변함 

bombCount -> 폭탄 개수

알트 버튼 누르면 발사






Trackback 0 And Comment 0

물체 파괴 함수 -> Destroyer 스크립트

|
Splash -> 강물빠지는거

explosionCircle -> 폭탄 사용시 잠시 원처럼 뜨는것.

ui_100points -> 적 죽이면 점수 화면에 뿌려줄때







Splash 와 Score 는 에니메이션으로 구성되있고 에니메이션 이벤트의 마지막에 -> DestroyGameObject를 실행시킨다.

explosionCircle 은 발생과 동시에 0.1초만에 오브젝트를 삭제시킨다.







destroyOnAwake -> 시작과 동시에 삭제시킬지 여부

findChild -> 자기의 자식을 삭제시킬지 여부

namedChild - > 자식을 삭제시킬때 삭제시킬 자식 이름


DestroyChildGameObject -> 자식 삭제

DisableChildGameObject -> 자식을 비활성화로

DestroyGameObject -> 자기 자신 삭제




Trackback 0 And Comment 0
prev | 1 | 2 | 3 | 4 | 5 | ··· | 21 | next