LoginSignup
1
0

More than 5 years have passed since last update.

昨日の復習をやってみた『そして伝説に…』

Posted at

今回作成したのはタイトルにある通り、「昨日の復習をやってみた『そして伝説に…』」です!
インスタンスやコンストラクタやprototypeなど前回の記事でちょっぴり勉強したので、それを面白おかしく使ってみたら覚えるかな?って事で試してみました!

以下様々なGASの記事を紹介してます!
https://bzbot.work/

紹介記事

今回紹介している記事は以下です!
https://bzbot.work/2019/03/05/gas-legend/

こだわり抜いたこのサムネイル画像!(笑)

image.png

作りたいもの

人をオブジェクトのコンストラクタとして昨日は勉強したので、『ヒューマン』を型として作ってみようと思いました。
まず、それぞれのJOBごとに必要な情報をまとめてみました。
画像データは以下サイトにて、お借りしました。ありがとうございます!
https://hiyokoyarou.com/tag/%E6%AD%A6%E5%99%A8/

person1

名前:フォースに好かれたチョン
JOB:フォース
HP:15
MP:10
こうげきりょく:15
ぼうぎょりょく:8
かしこさ:8
性格:おっちょこちょい
紹介
月に旅行に行った際に買ってきた温泉のおみやげ。
振るたびに『ボォオン』と音がなる。
暗い夜道を照らすのにちょうどいい。
=IMAGE(“http://drive.google.com/uc?export=view&id=1MDtpx5sHbcwB0q6j_oKVUWWXRgcTkWPQ”)

person2

名前:花の剣士チュン
JOB:剣士
HP:12
MP:15
こうげきりょく:10
ぼうぎょりょく:7
かしこさ:12
性格:おっとり
紹介
盾を使った行動がメイン。主に盾で殴る事が得意。盾以外で得意な事と言ったら花魔法を使える事。花魔法で相手を乗り物酔いにさせる事ができる。しかし、相手が乗り物酔いをしない場合は効果がない。
=IMAGE(“http://drive.google.com/uc?export=view&id=18CccewciUSEB5vwgKHr_o67qAA26OCQX”)

person3

名前:スナイパーチェン
JOB:銃
HP:14
MP:6
こうげきりょく:15
ぼうぎょりょく:8
かしこさ:12
性格:しっかりもの
紹介
こう見えて目が悪く、射撃の命中率は5割がいいところ。しかし、あまりに外しすぎると目に頼ることをやめ、目を閉じたまま寝てしまう。寝る事で消費した体力と精神的ダメージは回復するが、反省はしない。
=IMAGE(“http://drive.google.com/uc?export=view&id=1tQyFkcam9pNw0hU0t78OTd1EtMyL3ett”)

person4

名前:大魔導士ツン
JOB:賢者
HP:30
MP:50
こうげきりょく:10
ぼうぎょりょく:10
かしこさ:70
性格:うっかりもの
紹介
ぼーっと空を眺める事が好きな大魔導士ツン。しかし戦闘が始まれば人が変わったように戦う姿はまるで魔人と変わらない。
この大陸にその名を知らぬものはいないと言われている。
=IMAGE(“http://drive.google.com/uc?export=view&id=1htSnToHtJp9kd8ryM1xlSNzZAu9EFODZ”)

person5

名前:勇者見習いテン
JOB:勇者見習い
HP:13
MP:8
こうげきりょく:13
ぼうぎょりょく:12
かしこさ:10
性格:おちょうしもの
紹介
勇者のお兄ちゃんに憧れを抱く勇者見習いのテン。一生懸命お兄ちゃんの背中を追うが、彼は腹違いの子。勇者の血を引いていない事を知らない。しかし、彼は努力の天才で後に英雄となる。
=IMAGE(“http://drive.google.com/uc?export=view&id=1Rv7bibyCSxE5kxRySZRES23MyZzK4IU_”)

person6

名前:勇者アルスト
JOB:勇者
HP:50
MP:20
こうげきりょく:50
ぼうぎょりょく:25
かしこさ:20
性格:やさしい
紹介
ある日、大魔王ゾーマゾを倒すため旅に出る事になった勇者アルスト。光の弾を追い求め東の地を目指している。
彼はこの世の全ての希望であり、光である。
=IMAGE(“http://drive.google.com/uc?export=view&id=1tDWLsohVcgbKCsRBy0PoJIB6x2KYP79g”)

※IMAGE関数でGoogleDriveに入っているデータを呼び出してスプレッドシート上に表示します

実行画面

スプレッドシートのセル面積を小さくして、ドット絵っぽくしてみました!(笑)しかし、これが動くとかではないので、残念なのですが『▶︎ぼうけんをはじめる』をクリックすると名前を聞かれます。
image.png

クリックすると以下ウィンドウが立ち上がります。
image.png

名前を入力すると、JOBを選択する画面が表示されます。
ここに表示されている6つのJOBを選択して、入力フォームに入れます。
image.png

名前を入力すると、JOBを選択する画面が表示されます。
ここに表示されている6つのJOBを選択して、入力フォームに入れます。
image.png

コード

コードの概要についてはビジボットを参照してください
https://bzbot.work

GAS
function onOpen(){

  var yName = Browser.inputBox('あなたの名前は?');
  if (yName !== 'cancel'){
     var job = Browser.inputBox('こんにちは、' + yName + 'さん。\\n\\nこれからCHIKIN QUESTの世界に出発するために、あなたの代わりにプレーをするキャラクターを選択します。\\nJOBを以下から選択してください。\\n\\nフォース 剣士 銃 賢者 勇者見習い 勇者');
     selectJob(job);
  }
}  

var Person = function(psn){
  name = psn[0][1];
  job = psn[1][1]
  hp = psn[2][1];
  mp = psn[3][1];
  atc = psn[4][1];
  def = psn[5][1];
  int = psn[6][1];
  per = psn[7][1];
  url = psn[8][1];
  desc = psn[9][1];
};

Person.prototype.msg = function(){
Logger.log(name);
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sh1 = ss.setActiveSheet(ss.getSheetByName("スタート"));
  var sh2 = ss.setActiveSheet(ss.getSheetByName("キャラ"));
  sh2.getRange(1,2).setValue(name);
  sh2.getRange(3,2).setValue(hp);
  sh2.getRange(4,2).setValue(mp);
  sh2.getRange(5,2).setValue(atc);
  sh2.getRange(6,2).setValue(def);
  sh2.getRange(7,2).setValue(int);
  sh2.getRange(8,2).setValue(per);
  sh2.getRange(2,2).setValue(url);
  sh2.getRange(9,2).setValue(desc);  
};


function selectJob(job){
Logger.log(job);
  if(job === 'フォース'){
    var personArr = [
    ['name','フォースに好かれたチョン'],
    ['job','フォース'],
    ['hp',15],
    ['mp',10],
    ['atc',15],
    ['def',8],
    ['int',8],
    ['per','おっちょこちょい'],
    ['url','=IMAGE("http://drive.google.com/uc?export=view&id=1MDtpx5sHbcwB0q6j_oKVUWWXRgcTkWPQ")'],
    ['desc','ある日、大魔王ゾーマゾを倒すため旅に出る事になった勇者アルスト。光の弾を追い求め東の地を目指している。彼はこの世の全ての希望であり、光である。']
    ];

}else if(job === '剣士'){
    var personArr = [
    ['name','花の剣士チュン'],
    ['job','剣士'],
    ['hp',12],
    ['mp',15],
    ['atc',10],
    ['def',7],
    ['int',12],
    ['per','おっとり'],
    ['url','=IMAGE("http://drive.google.com/uc?export=view&id=18CccewciUSEB5vwgKHr_o67qAA26OCQX")'],
    ['desc','盾を使った行動がメイン。主に盾で殴る事が得意。盾以外で得意な事と言ったら花魔法を使える事。花魔法で相手を乗り物酔いにさせる事ができる。しかし、相手が乗り物酔いをしない場合は効果がない。']
    ];

  }else if(job === ''){
    var personArr = [
    ['name','スナイパーチェン'],
    ['job',''],
    ['hp',14],
    ['mp',6],
    ['atc',15],
    ['def',8],
    ['int',12],
    ['per','しっかりもの'],
    ['url','=IMAGE("http://drive.google.com/uc?export=view&id=1tQyFkcam9pNw0hU0t78OTd1EtMyL3ett")'],
    ['desc','こう見えて目が悪く、射撃の命中率は5割がいいところ。しかし、あまりに外しすぎると目に頼ることをやめ、目を閉じたまま寝てしまう。寝る事で消費した体力と精神的ダメージは回復するが、反省はしない。']];

  }else if(job === '賢者'){
    var personArr = [
    ['name','大魔導士ツン'],
    ['job','賢者'],
    ['hp',30],
    ['mp',50],
    ['atc',10],
    ['def',10],
    ['int',70],
    ['per','おっちょこちょい'],
    ['url','=IMAGE("http://drive.google.com/uc?export=view&id=1htSnToHtJp9kd8ryM1xlSNzZAu9EFODZ")'],
    ['desc','ぼーっと空を眺める事が好きな大魔導士ツン。しかし戦闘が始まれば人が変わったように戦う姿はまるで魔人と変わらない。この大陸にその名を知らぬものはいないと言われている。']];

  }else if(job === '勇者見習い'){
    var personArr = [
    ['name','勇者見習いテン'],
    ['job','勇者見習い'],
    ['hp',13],
    ['mp',8],
    ['atc',13],
    ['def',12],
    ['int',10],
    ['per','おちょうしもの'],
    ['url','=IMAGE("http://drive.google.com/uc?export=view&id=1Rv7bibyCSxE5kxRySZRES23MyZzK4IU_")'],
    ['desc','勇者のお兄ちゃんに憧れを抱く勇者見習いのテン。一生懸命お兄ちゃんの背中を追うが、彼は腹違いの子。勇者の血を引いていない事を知らない。しかし、彼は努力の天才で後に英雄となる。']];

  }else if(job === '勇者'){
    var personArr = [
    ['name','勇者アルスト'],
    ['job','勇者'],
    ['hp',50],
    ['mp',20],
    ['atc',50],
    ['def',25],
    ['int',20],
    ['per','やさしい'],
    ['url','=IMAGE("http://drive.google.com/uc?export=view&id=1tDWLsohVcgbKCsRBy0PoJIB6x2KYP79g")'],
    ['desc','ある日、大魔王ゾーマゾを倒すため旅に出る事になった勇者アルスト。光の弾を追い求め東の地を目指している。彼はこの世の全ての希望であり、光である。']];
    }
  var person = new Person(personArr);
  Logger.log(person.msg());
}
1
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0