したがって、私は Drools をいじり始めたばかりで、楽しんでいますが、ドキュメント (少なくとも私が見つけたビット) は全体的に少し深いものです。
2 つのオブジェクトが 1 つの属性を共有しているが、条件を正しく満たしていないように見える場合に起動するルールを作成しようとしています。ドキュメントを正しく読んでいれば、これでうまくいくはずです: (はい、よく知っているので、Magic:The Gathering のルールを遊びのベースとして使用しています)
ルール「704.5j。プレインズウォーカー タイプを共有するプレインズウォーカーが 2 体以上戦場にある場合、すべてがオーナーの墓地に置かれます。これは、「プレインズウォーカーの一意性ルール」と呼ばれます。」 いつ $c1 : Card (CurrentZone == ZoneType.Battlefield , Types.contains("Planeswalker") , $subtype : Types.get(1) , $c1ID : ID ); $c2 : Card (CurrentZone == ZoneType.Battlefield , Types.contains("プレインズウォーカー") , Types.contains($subtype) , ID != $c1ID); それから System.out.println("PW 一意性: " + $c1.getName() + " | " + $c2.getName()); $c1.setCurrentZone(ZoneType.Graveyard); $c2.setCurrentZone(ZoneType.Graveyard); 終わり
Java側でこれを行う必要がありますか?
編集: また、Drools のチュートリアル/ガイドの提案も大歓迎です。