//-------------------------------------------------------------------------------- // 自給船隊アルバイター てすとすくりぷと by Mintia //-------------------------------------------------------------------------------- // Ver 1.0 概観作成 //-------------------------------------------------------------------------------- // □補足説明 // LICENSES : 0〜11(依頼数に応じて増やす予定) // WORKS : 1〜11(依頼数に応じて増えます) // callfunc : work_01〜10まで現在作成(予定) // $worktime : 仕事発生中=1 仕事なし=0 //-------------------------------------------------------------------------------- prontera.gat,165,107,3 script BBS管理人 865,{ //----- 初期設定 set @workzeny,0; //星数の報酬をリセット set @petid,0; //ペットを探せのときの値をリセット //----- 初期設定終了 mes "[BBS管理人]"; mes "はじめまして〜。"; mes "私はBBS管理人です。"; next; if (LICENSES == 0){ mes "[BBS管理人]"; mes "初めての方ですね?"; mes "ご説明いたしましょうか?^FF0000(推奨)^000000"; next; if(select("はい","いいえ") == 1){ callfunc "readme_0"; set LICENSES,1; next; } callfunc "usermenu"; } if (LICENSES >= 1){ callfunc "usermenu";} } //-------------------------------------------------------------------------------- // メインスクリプト メニューファンクション //-------------------------------------------------------------------------------- function script readme_0 { mes "[BBS管理人]"; mes "では改めてご説明いたします。"; mes "私たちはこの鯖のNPCさんから依頼を受け、それに応じてプレイヤーさん達にお仕事を提供しております。"; mes "仕事には色々なジャンルがありますが、依頼レベルがありまして、初めはレベルの低い仕事しか選べないようになっております。"; mes "それは私どもとあなた様の信頼度を図る一環として取り組んでいることですので、ご了承くださいませ。"; mes "依頼レベルについては次ページをご覧ください。"; next; mes "[BBS管理人]"; mes "依頼レベルについてご説明します。"; mes "依頼内容の右側に★が見えると思いますが、この星の数が依頼レベルとなっております。"; mes "はじめは★1つの仕事のみ受けることが可能ですが、いくつかこなした後信用度が上がれば、"; mes "★2つ以上の仕事を請けることが可能となります。★の数は今のところ5つまで設定してあります。"; mes "報酬とランクアップについては次ページへ"; next; mes "[BBS管理人]"; mes "報酬につきましては依頼人のNPCさんから頂けるもののほか、私どもは★の数に応じた定額金を支給いたします。"; mes "定額金につきましては、"; mes "★1つで^0000FF500,000^000000となっており★の数が増えると最大^0000FF2,500,000^000000まで支給額があがります。"; mes "ランクアップにつきましては、現段階では依頼を受けた数に応じてアップする仕様となっておりますので、"; mes "色々受けていれば自然と★の数が多い仕事も受けることが可能となります。"; next; mes "[BBS管理人]"; mes "説明内容は以上ですね。"; mes "では、会員登録をしますので少々お待ちを・・・"; next; mes "[BBS管理人]"; mes "^0000FF" + strcharinfo(0) + "^000000様ですね。"; mes "登録完了しました。"; mes "では早速依頼メニューをだしますね"; return; } function script readme_1 { mes "[BBS管理人]"; mes "依頼レベルについてご説明します。"; mes "依頼内容の右側に★が見えると思いますが、この星の数が依頼レベルとなっております。"; mes "はじめは★1つの仕事のみ受けることが可能ですが、いくつかこなした後信用度が上がれば、"; mes "★2つ以上の仕事を請けることが可能となります。★の数は今のところ5つまで設定してあります。"; mes "報酬とランクアップについては次ページへ"; next; mes "[BBS管理人]"; mes "報酬につきましては依頼人のNPCさんから頂けるもののほか、私どもは★の数に応じた定額金を支給いたします。"; mes "定額金につきましては、"; mes "★1つで^0000FF500,000^000000となっており★の数が増えると最大^0000FF2,500,000^000000まで支給額があがります。"; mes "ランクアップにつきましては、現段階では依頼を受けた数に応じてアップする仕様となっておりますので、"; mes "色々受けていれば自然と★の数が多い仕事も受けることが可能となります。"; return; } function script usermenu { mes "[BBS管理人]"; callfunc "workend"; mes "^0080CF" + strcharinfo(0) + "^000000様"; mes "今日はどのようなご用件ですか?"; next; switch(select("依頼を受ける","説明を聞く","ランク表示","やめる")){ case 1: mes "[BBS管理人]"; mes "只今の依頼内容を一覧表示いたします。件数が多い場合ロード時間がかかると思いますがご了承ください。"; next; mes "[BBS管理人]"; callfunc "worklist_1"; mes "受けたい依頼の先頭の番号を入力してください。"; mes "例:01.なら^FF00001^000000と入力"; mes "^FF00000^000000でキャンセルできます"; next; if($worktime == 0){ callfunc "workinput";} mes "[BBS管理人]"; mes "只今依頼進行中のため新たな依頼を受けることができません"; close; case 2: callfunc "readme_1"; next; callfunc "usermenu"; case 3: callfunc "worklist_2"; case 4: mes "[BBS管理人]"; mes "またどうぞ"; close; } } function script worklist_1 { mes "01.「ペットを探して下さい」 - ★"; mes "02.「材料集め手伝って」 - ★"; mes "03.「ヘルプ!人手が足りない」 - ★"; mes "04.「みてい」 - ★"; mes "05.「みてい」 - ★★"; mes "06.「みてい」 - ★"; mes "07.「みてい」 - ★"; mes "08.「みてい」 - ★"; mes "09.「みてい」 - ★"; mes "10.「みてい」 - ★★★"; return; } function script worklist_2 { if (LICENSES == 1){ mes "01.^0000FF「ペットを探して下さい」^000000"; mes "02.^0000FF「材料集め手伝って」^000000"; mes "03.^0000FF「ヘルプ!人手が足りない」^000000"; mes "04.^0000FF「みてい」^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^0000FF「みてい」^000000"; mes "07.^0000FF「みてい」^000000"; mes "08.^0000FF「みてい」^000000"; mes "09.^0000FF「みてい」^000000"; mes "10.^0000FF「みてい」^000000"; close; } if (LICENSES == 2){ mes "01.^888888「ペットを探して下さい」^FF0000済^000000"; mes "02.^0000FF「材料集め手伝って」^000000"; mes "03.^0000FF「ヘルプ!人手が足りない」^000000"; mes "04.^0000FF「みてい」^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^0000FF「みてい」^000000"; mes "07.^0000FF「みてい」^000000"; mes "08.^0000FF「みてい」^000000"; mes "09.^0000FF「みてい」^000000"; mes "10.^0000FF「みてい」^000000"; close; } if (LICENSES == 3){ mes "01.^888888「ペットを探して下さい」^FF0000済^000000"; mes "02.^888888「材料集め手伝って」^FF0000済^000000"; mes "03.^0000FF「ヘルプ!人手が足りない」^000000"; mes "04.^0000FF「みてい」^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^0000FF「みてい」^000000"; mes "07.^0000FF「みてい」^000000"; mes "08.^0000FF「みてい」^000000"; mes "09.^0000FF「みてい」^000000"; mes "10.^0000FF「みてい」^000000"; close; } if (LICENSES == 4){ mes "01.^888888「ペットを探して下さい」^FF0000済^000000"; mes "02.^888888「材料集め手伝って」^FF0000済^000000"; mes "03.^888888「ヘルプ!人手が足りない」^FF0000済^000000"; mes "04.^0000FF「みてい」^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^0000FF「みてい」^000000"; mes "07.^0000FF「みてい」^000000"; mes "08.^0000FF「みてい」^000000"; mes "09.^0000FF「みてい」^000000"; mes "10.^0000FF「みてい」^000000"; close; } if (LICENSES == 5){ mes "01.^888888「ペットを探して下さい」^FF0000済^000000"; mes "02.^888888「材料集め手伝って」^FF0000済^000000"; mes "03.^888888「ヘルプ!人手が足りない」^FF0000済^000000"; mes "04.^888888「みてい」^FF0000済^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^0000FF「みてい」^000000"; mes "07.^0000FF「みてい」^000000"; mes "08.^0000FF「みてい」^000000"; mes "09.^0000FF「みてい」^000000"; mes "10.^0000FF「みてい」^000000"; close; } if (LICENSES == 6){ mes "01.^888888「ペットを探して下さい」^FF0000済^000000"; mes "02.^888888「材料集め手伝って」^FF0000済^000000"; mes "03.^888888「ヘルプ!人手が足りない」^FF0000済^000000"; mes "04.^888888「みてい」^FF0000済^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^888888「みてい」^FF0000済^000000"; mes "07.^0000FF「みてい」^000000"; mes "08.^0000FF「みてい」^000000"; mes "09.^0000FF「みてい」^000000"; mes "10.^0000FF「みてい」^000000"; close; } if (LICENSES == 7){ mes "01.^888888「ペットを探して下さい」^FF0000済^000000"; mes "02.^888888「材料集め手伝って」^FF0000済^000000"; mes "03.^888888「ヘルプ!人手が足りない」^FF0000済^000000"; mes "04.^888888「みてい」^FF0000済^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^888888「みてい」^FF0000済^000000"; mes "07.^888888「みてい」^FF0000済^000000"; mes "08.^0000FF「みてい」^000000"; mes "09.^0000FF「みてい」^000000"; mes "10.^0000FF「みてい」^000000"; close; } if (LICENSES == 8){ mes "01.^888888「ペットを探して下さい」^FF0000済^000000"; mes "02.^888888「材料集め手伝って」^FF0000済^000000"; mes "03.^888888「ヘルプ!人手が足りない」^FF0000済^000000"; mes "04.^888888「みてい」^FF0000済^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^888888「みてい」^FF0000済^000000"; mes "07.^888888「みてい」^FF0000済^000000"; mes "08.^888888「みてい」^FF0000済^000000"; mes "09.^0000FF「みてい」^000000"; mes "10.^0000FF「みてい」^000000"; close; } if (LICENSES == 9){ mes "01.^888888「ペットを探して下さい」^FF0000済^000000"; mes "02.^888888「材料集め手伝って」^FF0000済^000000"; mes "03.^888888「ヘルプ!人手が足りない」^FF0000済^000000"; mes "04.^888888「みてい」^FF0000済^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^888888「みてい」^FF0000済^000000"; mes "07.^888888「みてい」^FF0000済^000000"; mes "08.^888888「みてい」^FF0000済^000000"; mes "09.^888888「みてい」^FF0000済^000000"; mes "10.^0000FF「みてい」^000000"; close; } if (LICENSES == 10){ mes "01.^888888「ペットを探して下さい」^FF0000済^000000"; mes "02.^888888「材料集め手伝って」^FF0000済^000000"; mes "03.^888888「ヘルプ!人手が足りない」^FF0000済^000000"; mes "04.^888888「みてい」^FF0000済^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^888888「みてい」^FF0000済^000000"; mes "07.^888888「みてい」^FF0000済^000000"; mes "08.^888888「みてい」^FF0000済^000000"; mes "09.^888888「みてい」^FF0000済^000000"; mes "10.^0000FF「みてい」^000000"; close; } if (LICENSES == 11){ mes "01.^888888「ペットを探して下さい」^FF0000済^000000"; mes "02.^888888「材料集め手伝って」^FF0000済^000000"; mes "03.^888888「ヘルプ!人手が足りない」^FF0000済^000000"; mes "04.^888888「みてい」^FF0000済^000000"; mes "05.^0000FF「みてい」^000000"; mes "06.^888888「みてい」^FF0000済^000000"; mes "07.^888888「みてい」^FF0000済^000000"; mes "08.^888888「みてい」^FF0000済^000000"; mes "09.^888888「みてい」^FF0000済^000000"; mes "10.^0000FF「みてい」^000000"; close; } } function script workinput { input @worknum; if (@worknum == 0) close; if (@worknum>11) { mes "実行範囲エラー"; callfunc "TrGmInput"; } switch(@worknum){ case 1: mes "01.「ペットを探して下さい」"; mes "の依頼でよろしいですか?"; next; if(select("はい","いいえ") == 1){ callfunc "work_01";} callfunc "workinput"; case 2: mes "02.「材料集め手伝って」"; mes "の依頼でよろしいですか?"; next; if(select("はい","いいえ") == 1){ callfunc "work_02";} callfunc "workinput"; case 3: mes "03.「みてい」"; mes "の依頼でよろしいですか?"; next; if(select("はい","いいえ") == 1){ callfunc "work_00";} callfunc "workinput"; case 4: mes "04.「みてい」"; mes "の依頼でよろしいですか?"; next; if(select("はい","いいえ") == 1){ callfunc "work_00";} callfunc "workinput"; case 5: mes "05.「みてい」"; mes "の依頼でよろしいですか?"; next; if(select("はい","いいえ") == 1){ callfunc "work_00";} callfunc "workinput"; case 6: mes "06.「みてい」"; mes "の依頼でよろしいですか?"; next; if(select("はい","いいえ") == 1){ callfunc "work_00";} callfunc "workinput"; case 7: mes "07.「みてい」"; mes "の依頼でよろしいですか?"; next; if(select("はい","いいえ") == 1){ callfunc "work_00";} callfunc "workinput"; case 8: mes "08.「みてい」"; mes "の依頼でよろしいですか?"; next; if(select("はい","いいえ") == 1){ callfunc "work_00";} callfunc "workinput"; case 9: mes "09.「みてい」"; mes "の依頼でよろしいですか?"; next; if(select("はい","いいえ") == 1){ callfunc "work_00";} callfunc "workinput"; case 10: mes "10.「みてい」"; mes "の依頼でよろしいですか?"; next; if(select("はい","いいえ") == 1){ callfunc "work_00";} callfunc "workinput"; } } function script workend { set @workzeny,500000; //星1つにつき500kゼニー if((LICENSES == 2)&&(WORKS == 1))||((LICENSES == 3)&&(WORKS == 2))||((LICENSES == 4)&&(WORKS == 3)){ mes "^0080CF" + strcharinfo(0) + "^000000様"; mes "お疲れ様でした。"; mes "今回の仕事は星1つですので、報奨金は^0000FF"+@workzeny+"z^000000です。"; mes "ではお支払いしますね。"; set Zeny,Zeny+500000; } return; } //-------------------------------------------------------------------------------- //依頼内容をこちらへ(work_00 〜 work_11) //-------------------------------------------------------------------------------- function script work_00 { mes "[BBS管理人]"; mes "こちらの依頼内容は削除されました。受けることができません"; close; } function script work_01 { mes "[BBS管理人]"; mes "こちらの依頼を受けますね。1つの仕事をしている間は掛け持ちできないのでご注意ください。"; mes "では早速、依頼内容をお話します。"; next; mes "[BBS管理人]"; mes "プロンテラにお住まいのマーズさんの愛犬が行方不明になりまして、捜索願を出してますが未だ見つかっておりません。"; mes "依頼人住所(^00FF00prontera.gat 248,227^000000)"; mes "早速依頼人のところに行って詳しく聞いてくださいね"; set $worktime,1; close; } function script work_02 { if(LICENSES == 2){ mes "[BBS管理人]"; mes "こちらの依頼を受けますね。1つの仕事をしている間は掛け持ちできないのでご注意ください。"; mes "では早速、依頼内容をお話します。"; next; mes "[BBS管理人]"; mes "フェイヨンにお住まいのヒイラギさんが至急材料手配が必要とのこと、なんでもケーキの大量注文があったとかで材料不足で困ってるようです。"; mes "依頼人住所(^00FF00payon.gat 000,111^000000)"; mes "早速依頼人のところに行って詳しく聞いてくださいね"; set $worktime,1; close; } mes "[BBS管理人]"; mes "依頼順が飛ばせないのは仕様です。諦めて下さい"; close; } //-------------------------------------------------------------------------------- //依頼先:外部スクリプトのほうがいいかな?  //とりあえず今は分かりやすいようにこちらに記述 //-------------------------------------------------------------------------------- // work_01 「ペットを探して下さい」ここから //-------------------------------------------------------------------------------- prontera.gat,248,227,3 script マーズ 893,{ if($worktime == 0){ mes "[マーズ]"; mes "困りましたわ・・・"; close; } if(WORKS == 1){ if(countitem(9904)>=1){ mes "[マーズ]"; mes "捕まえてきましたね。孵化させて見せていただけますか?"; close; } else if(getpetinfo(0) == 1515){ mes "[マーズ]"; mes "お仕事ご苦労様です。気性が荒くて大変でしたでしょう?"; mes "うーん・・・。やっぱり・・・。私のハティちゃんと違うわ。"; gmcommand "@emotion 23"; mes "ですが、せっかく捕まえていただいたので・・・。"; mes "それはあなたがお世話してあげてください。"; next; mes "[マーズ]"; mes "ええと・・・。お礼は何がいいかしら?"; mes "そうね・・・。これにしましょう。"; getitem 519,10; //ミルク(ハティベベエサ) next; mes "[" + strcharinfo(0) + "]"; mes "ありがとうございます♪(これで・・・いいのかな?)"; set LICENSES,2; //BBS管理人用に+2 set $worktime,0; //仕事offにしておく close; } } if(($worktime == 1)&&(LICENSES == 1)){ mes "[マーズ]"; mes "あら、派遣会社のかたですね。お待ちしておりましたわ。"; mes "早速ですが、ウチの可愛い子犬が逃げ出してしまったの。"; next; mes "[" + strcharinfo(0) + "]"; mes "どんなペットでどこで逃げたか教えていただけますか?"; next; mes "[マーズ]"; mes "ええ、これからお話いたしますわ。"; mes "それがですね、血統書付の^0000FFハティー^000000ちゃんなの。"; gmcommand "@emotion 23"; mes "行方不明になる前はベベだったのだけど、もう1ヶ月もたつから大きくなってるはずだわ"; next; mes "[マーズ]"; mes "だから・・・。その・・・。"; mes "べべを新たに捕まえていただくというのはどうでしょうか?"; next; mes "[" + strcharinfo(0) + "]"; gmcommand "@emotion 23"; mes "そ、それはかまいませんが、まったく別のになっちゃいますよ?"; next; mes "[マーズ]"; mes "ええ、いいの。"; mes "あの子は野生に戻りたかったのね・・・。私もあの子を愛してますから、あきらめますわ。"; mes "依頼はちょっと変わっちゃったけどそれでお願いできるかしら?"; next; mes "[" + strcharinfo(0) + "]"; mes "あ、はい。わかりました。"; next; mes "[マーズ]"; mes "では、これをお渡しします。"; getitem 9924,5; //水の牙(ハティベベテイム) mes "ではお待ちしておりますわ。"; set WORKS,1; close; } if(LICENSES >= 2){ mes "[マーズ]"; mes "この間は私のわがままばかりいって申し訳ないですわ。"; mes "やっぱりフツウの犬にしてみましたの。"; close; } OnTimer10000: OnTimer15000: stopnpctimer; hideonnpc "pochi"; end; OnInit: hideonnpc "pochi"; end; } prontera.gat,248,221,3 script pochi 81,4,4,{ OnTouch: mes "[じぇえむず]"; mes "クォンクォン"; close2; hideoffnpc; initnpctimer; end; } //-------------------------------------------------------------------------------- // work_01 「ペットを探して下さい」ここまで //--------------------------------------------------------------------------------