- if
- 条件式
- 論理演算子
- 短絡評価
- switch
- 三項演算子
- [UEのみ]Unityにはない条件分岐
void Start(){
int a = 0;
if(a > 0){
Debug.Log("通った");
}
}
void Start(){
int a = 0;
if(a < 0){ // ✖
Debug.Log("上を通った");
}else if(a > 0){ //〇
Debug.Log("真ん中を通った")
}else{
Debug.Log("下を通った")
}
}
〇のなかで一番上のものだけが実行されます。 void Start(){
int a = 1;
if(a > 0){ // 〇
Debug.Log("上を通った");
}else if(a == 1){ //〇
Debug.Log("真ん中を通った")
}else{
Debug.Log("下を通った")
}
}
bool型は真か偽かを表します。trueかfalseの2種類の値しか入れられません。 void Start(){
int a = 1;
bool jouken1 = a > 0;
bool jouken2 = a == 1;
if(jouken1){
Debug.Log("上を通った");
}else if(jouken2){
Debug.Log("真ん中を通った")
}else{
Debug.Log("下を通った")
}
}
複数の条件をANDやORで繋げることができます。 void Start(){
int a = 2;
if(a > 0 & a < 2){
Debug.Log("上を通った");
}
}
void Start(){
int a = 2;
if(a > 0 & a < 2){
Debug.Log("上を通った");
}else if(a > 0 | a < 2){
Debug.Log("真ん中を通った");
}else{
Debug.Log("下を通った")
}
}
void Start(){
int a = 2;
if(a > 0 && a < 2){
Debug.Log("上を通った");
}else if(a > 0 || a < 2){
Debug.Log("真ん中を通った");
}else{
Debug.Log("下を通った")
}
}
さらに複雑な条件を記述した短絡評価のスクリプト例です。 void Start(){
int a = 1;
int b = 2;
if((a > 0 && b < 0) && (a == 1 && b == 2)){
Debug.Log("上を通った");
}else if((a < 0 || b > 0) || (a != 1 || b != 2)){
Debug.Log("真ん中を通った");
}else{
Debug.Log("下を通った")
}
}
Switch(比較対象)
{
case 比較するもの:
処理内容
break;
}
caseの比較対象が連続しているときは連続して記述することが可能です。defaultは記述しなくてもよいです。 void Start(){
int a = 1;
switch(a){
case 0:
Debug.Log("aは0です");
break;
case 1:
Debug.Log("aは1です");
break;
case 2:
Debug.Log("aは2です");
break;
case 3:
case 4:
Debug.Log("aは3もしくは4です");
break;
default:
Debug.Log("aは01234以外です");
break;
}
}
void Start(){
int a = 1;
string jouken = (a > 0) ? "上を通った" : "下を通った";
Debug.Log(jouken);
}
ANDノード
ORノード
NOTノード
NOT EQUALノード
EQUALノード
GREATER THANノード
GREATER THAN OR EQUAL TOノード
LESSER THANノード
LESSER THAN OR EQUAL TOノード
Gateノード
扉に動作を与えたいときに使える便利なノードです。Flip Flopノード
AとBの実行ワイヤー先のフローを交互に行うノードです。