Difference between revisions of "Roll.m"

From Cohen Courses
Jump to navigationJump to search
(Created page with "function [ face ] = roll(d,ld,upTo5,upTo6) % if d==1 % face = randi(6) % elseif d==2 & ld==1 % face = 6 % elseif d==2 & ld==0 % face = randi(5) %...")
 
 
Line 1: Line 1:
function [ face ] = roll(d,ld,upTo5,upTo6)
+
function [ face ] = roll(d,ld,upTo5,upTo6)
%    if d==1
+
tmp1 = upTo6;
%        face = randi(6)
+
tmp2 = (ld==1)*6 + (ld==2).*upTo5;
%    elseif d==2 & ld==1
+
tmp3 = (ld==1)*1 + (ld==2).*(upTo5 + 1);
%        face = 6
+
face = (d==1).*tmp1 + (d==2).*tmp2 + (d==3).*tmp3;
%    elseif d==2 & ld==0
+
end
%        face = randi(5)
 
%    elseif d==3 & ld==1
 
%        face = 1
 
%    else
 
%        face = randi(5)+1
 
%    end
 
tmp1 = upTo6;
 
tmp2 = (ld==1)*6 + (ld==2).*upTo5;
 
tmp3 = (ld==1)*1 + (ld==2).*(upTo5 + 1);
 
face = (d==1).*tmp1 + (d==2).*tmp2 + (d==3).*tmp3;
 
end
 

Latest revision as of 15:42, 9 September 2013

function [ face ] = roll(d,ld,upTo5,upTo6)
tmp1 = upTo6;
tmp2 = (ld==1)*6 + (ld==2).*upTo5;
tmp3 = (ld==1)*1 + (ld==2).*(upTo5 + 1);
face = (d==1).*tmp1 + (d==2).*tmp2 + (d==3).*tmp3;
end