万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

  • ・資産運用おすすめ
    10万円は1000円くらい利益
    資産運用ブログ アセマネ
    • ・寄付お願いします
      YENTEN:YYzNPzdsZWqr5THWAdMrKDj7GT8ietDc2W
      BitZenny:ZfpUbVya8MWQkjjGJMjA7P9pPkqaLnwPWH
      c0ban:8KG95GXdEquNpPW8xJAJf7nn5kbimQ5wj1
      Skycoin:KMqcn7x8REwwzMHPi9fV9fbNwdofYAWKRo

    WaitForSecondsではまった in Boo Unity

    import System.Collections
        def Do() as IEnumerator:
            print('Do now')
            yield WaitForSeconds(2)
            print('Do 2 seconds later')
    

    http://unity3d.com/support/documentation/ScriptReference/WaitForSeconds.html
    Booはわざわざ「 as IEnumerator:」がいる。
    このimport System.Collectionsも忘れないように!!!実行中にimportを抜けてたら上手く動いてたりするからわかりづらい
    これに気がつかずはまった…
    こんな違いなくして欲しいものだ。まあBoo使うなってことか?

    Androidライセンス購入 Unity

    iPhoneしかないけど買ったw
    でもiPhoneライセンスも買うと高いから購入していない

    ■買うときにはまったこと
    IDを入れる覧があった。
    →これは既に買った人用だと思う。(Unity→About Unityの右下のLicense keyを入れても無理だった)
    買った経験のない人は今のUnityを入れなおしなのかと思ったが、そうではなかった。

    Android用のビルド

    CE0051: Operator '/' cannot be used with a left hand side of type 'Object' and a right hand side of type 'int'.

    型をしっかりやっておかないとエラーになる。
    Objectへ/とか+=とかだめ。
    JSであればvarとかきちんと型宣言しよう

    function Hoge(x, y)
      hoge += x;
    

    ↑だめ

    function Hoge(x:int, y:int)
      var hoge:int += x;  
    

    ↑こうする

    ダックタイピングできないならUnityの恩恵はプログラミングでないな。
    ぶっちゃけObjective-CとかJavaの敷居が下がってないよ。

    音の流し方 Unity

    こんな感じであったがよく分からない。

    audio.Play();
    audio.PlayOneShot(hoge);
    audio.Play(hoge);
    

    おそらく、↑はステージの音楽とかの再生用なの?
    「ゲームオブジェクトへ音声ファイルをドラッグ」すればその音楽が再生できる。
    しかし、このやりかたでは、「複数の音楽(・・というか音)」を再生させたいのに、
    1つのゲームオブジェクトへ1つしか音声が追加できない・・。


    キャラクターに音を載せたいときは
    宣言にAudioClipでやって(AudioSourceでなく)

    var hoge : AudioClip;
    var bar : AudioClip;
    
    if (x = 1) {
      AudioSource.PlayClipAtPoint(hoge, transform.position);
    } else if (x = 2) {
      AudioSource.PlayClipAtPoint(bar, transform.position);
    }
    

    こんなかんじでやる