本文整理汇总了C#中EngineWarrior类的典型用法代码示例。如果您正苦于以下问题:C# EngineWarrior类的具体用法?C# EngineWarrior怎么用?C# EngineWarrior使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
EngineWarrior类属于命名空间,在下文中一共展示了EngineWarrior类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: MOD_AB_AiAi
public void MOD_AB_AiAi(int ip, EngineWarrior warrior)
{
int reg_IR_ValueB;
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_IR_ValueCpyB = ValuesB[ip];
int reg_AdrA;
int reg_AdrB;
int reg_AA_Value;
int reg_direct;
bool reg_die = false;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_AdrA = mod(reg_direct + ValuesA[reg_direct]);
reg_AA_Value = ValuesA[reg_AdrA];
reg_direct = mod(reg_IR_ValueCpyB + ip);
reg_AdrB = mod(reg_direct + ValuesA[reg_direct]);
reg_IR_ValueB = ValuesB[reg_AdrB];
if (reg_AA_Value == 0) reg_die = true;
else ValuesB[reg_AdrB] = reg_IR_ValueB % reg_AA_Value;
ip++;
if (!reg_die)
{
warrior.Tasks.Enqueue(mod(ip));
}
else
{
warrior.DeadTasksCount++;
Died(ip);
}
}
示例2: NOP_AB_AmAi
public void NOP_AB_AmAi(int ip, EngineWarrior warrior)
{
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_direct;
reg_direct = mod(reg_IR_ValueCpyA + ip);
dec(ref ValuesA[reg_direct]);
ip++;
warrior.Tasks.Enqueue(mod(ip));
}
示例3: JMP_AB_AiAi
public void JMP_AB_AiAi(int ip, EngineWarrior warrior)
{
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_AdrA;
int reg_direct;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_AdrA = mod(reg_direct + ValuesA[reg_direct]);
ip = reg_AdrA;
warrior.Tasks.Enqueue(mod(ip));
}
示例4: DAT_AB_AiAi
public void DAT_AB_AiAi(int ip, EngineWarrior warrior)
{
bool reg_die;
reg_die = true;
if (!reg_die)
{
warrior.Tasks.Enqueue(mod(ip));
}
else
{
warrior.DeadTasksCount++;
Died(ip);
}
}
示例5: MOV_AB_AiAi
public void MOV_AB_AiAi(int ip, EngineWarrior warrior)
{
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_IR_ValueCpyB = ValuesB[ip];
int reg_AdrA;
int reg_AdrB;
int reg_AA_Value;
int reg_direct;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_AdrA = mod(reg_direct + ValuesA[reg_direct]);
reg_AA_Value = ValuesA[reg_AdrA];
reg_direct = mod(reg_IR_ValueCpyB + ip);
reg_AdrB = mod(reg_direct + ValuesA[reg_direct]);
ValuesB[reg_AdrB] = reg_AA_Value;
ip++;
warrior.Tasks.Enqueue(mod(ip));
}
示例6: SUB_AB_AiAm
public void SUB_AB_AiAm(int ip, EngineWarrior warrior)
{
int reg_IR_ValueB;
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_IR_ValueCpyB = ValuesB[ip];
int reg_AdrA;
int reg_AdrB;
int reg_AA_Value;
int reg_direct;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_AdrA = mod(reg_direct + ValuesA[reg_direct]);
reg_AA_Value = ValuesA[reg_AdrA];
reg_direct = mod(reg_IR_ValueCpyB + ip);
reg_AdrB = mod(reg_direct + dec(ref ValuesA[reg_direct]));
reg_IR_ValueB = ValuesB[reg_AdrB];
ValuesB[reg_AdrB] = reg_IR_ValueB - reg_AA_Value;
if (ValuesB[reg_AdrB] < 0) ValuesB[reg_AdrB] += coreSize;
ip++;
warrior.Tasks.Enqueue(mod(ip));
}
示例7: SPL_AB_AiAi
public void SPL_AB_AiAi(int ip, EngineWarrior warrior)
{
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_AdrA;
int reg_direct;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_AdrA = mod(reg_direct + ValuesA[reg_direct]);
if (warrior.LiveTasks + 1 < rules.MaxProcesses)
{
warrior.Tasks.Enqueue(mod(ip + 1));
ip = reg_AdrA;
Split(reg_AdrA);
}
else
{
ip++;
}
warrior.Tasks.Enqueue(mod(ip));
}
示例8: ADD_AB_AiBi
public void ADD_AB_AiBi(int ip, EngineWarrior warrior)
{
int reg_IR_ValueB;
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_IR_ValueCpyB = ValuesB[ip];
int reg_AdrA;
int reg_AdrB;
int reg_AA_Value;
int reg_direct;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_AdrA = mod(reg_direct + ValuesA[reg_direct]);
reg_AA_Value = ValuesA[reg_AdrA];
reg_direct = mod(reg_IR_ValueCpyB + ip);
reg_AdrB = mod(reg_direct + ValuesB[reg_direct]);
reg_IR_ValueB = ValuesB[reg_AdrB];
ValuesB[reg_AdrB] = reg_IR_ValueB + reg_AA_Value;
if (ValuesB[reg_AdrB] >= coreSize) ValuesB[reg_AdrB] -= coreSize;
ip++;
warrior.Tasks.Enqueue(mod(ip));
}
示例9: LDP_AB_AiAi
public void LDP_AB_AiAi(int ip, EngineWarrior warrior)
{
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_IR_ValueCpyB = ValuesB[ip];
int reg_AdrA;
int reg_AdrB;
int reg_AA_Value;
int reg_direct;
int reg_psAddress;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_AdrA = mod(reg_direct + ValuesA[reg_direct]);
reg_AA_Value = ValuesA[reg_AdrA];
reg_direct = mod(reg_IR_ValueCpyB + ip);
reg_AdrB = mod(reg_direct + ValuesA[reg_direct]);
reg_psAddress = Instruction.Mod(reg_AA_Value, rules.PSpaceSize);
ValuesB[reg_AdrB] = warrior.GetPSpaceValue(reg_psAddress);
ip++;
warrior.Tasks.Enqueue(mod(ip));
}
示例10: DAT_AB_AiBm
public void DAT_AB_AiBm(int ip, EngineWarrior warrior)
{
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_IR_ValueCpyB = ValuesB[ip];
int reg_direct;
bool reg_die;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_direct = mod(reg_IR_ValueCpyB + ip);
dec(ref ValuesB[reg_direct]);
reg_die = true;
if (!reg_die)
{
warrior.Tasks.Enqueue(mod(ip));
}
else
{
warrior.DeadTasksCount++;
Died(ip);
}
}
示例11: JMZ_AB_AiAi
public void JMZ_AB_AiAi(int ip, EngineWarrior warrior)
{
int reg_IR_ValueB;
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_IR_ValueCpyB = ValuesB[ip];
int reg_AdrA;
int reg_AdrB;
int reg_direct;
bool reg_jump;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_AdrA = mod(reg_direct + ValuesA[reg_direct]);
reg_direct = mod(reg_IR_ValueCpyB + ip);
reg_AdrB = mod(reg_direct + ValuesA[reg_direct]);
reg_IR_ValueB = ValuesB[reg_AdrB];
reg_jump = (reg_IR_ValueB == 0);
if (reg_jump)
ip = reg_AdrA;
else
ip++;
warrior.Tasks.Enqueue(mod(ip));
}
示例12: SNE_AB_AiAm
public void SNE_AB_AiAm(int ip, EngineWarrior warrior)
{
int reg_IR_ValueB;
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_IR_ValueCpyB = ValuesB[ip];
int reg_AdrA;
int reg_AdrB;
int reg_AA_Value;
int reg_direct;
bool reg_jump;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_AdrA = mod(reg_direct + ValuesA[reg_direct]);
reg_AA_Value = ValuesA[reg_AdrA];
reg_direct = mod(reg_IR_ValueCpyB + ip);
reg_AdrB = mod(reg_direct + dec(ref ValuesA[reg_direct]));
reg_IR_ValueB = ValuesB[reg_AdrB];
reg_jump = (reg_IR_ValueB != reg_AA_Value);
if (reg_jump)
ip += 2;
else
ip++;
warrior.Tasks.Enqueue(mod(ip));
}
示例13: MOD_B_ImIm
public void MOD_B_ImIm(int ip, EngineWarrior warrior)
{
int reg_IR_ValueA;
int reg_IR_ValueB = ValuesB[ip];
int reg_AdrB;
bool reg_die = false;
reg_IR_ValueA = reg_IR_ValueB;
reg_AdrB = ip;
if (reg_IR_ValueA == 0) reg_die = true;
else ValuesB[reg_AdrB] = reg_IR_ValueB % reg_IR_ValueA;
ip++;
if (!reg_die)
{
warrior.Tasks.Enqueue(mod(ip));
}
else
{
warrior.DeadTasksCount++;
Died(ip);
}
}
示例14: MOD_B_ImBp
public void MOD_B_ImBp(int ip, EngineWarrior warrior)
{
int reg_IR_ValueA;
int reg_IR_ValueB = ValuesB[ip];
int reg_IR_ValueCpyB = ValuesB[ip];
int reg_AdrB;
int reg_direct;
bool reg_die = false;
reg_IR_ValueA = reg_IR_ValueB;
reg_direct = mod(reg_IR_ValueCpyB + ip);
reg_AdrB = mod(reg_direct + ValuesB[reg_direct]);
reg_IR_ValueB = ValuesB[reg_AdrB];
inc(ref ValuesB[reg_direct]);
if (reg_IR_ValueA == 0) reg_die = true;
else ValuesB[reg_AdrB] = reg_IR_ValueB % reg_IR_ValueA;
ip++;
if (!reg_die)
{
warrior.Tasks.Enqueue(mod(ip));
}
else
{
warrior.DeadTasksCount++;
Died(ip);
}
}
示例15: MOD_BA_DiIm
public void MOD_BA_DiIm(int ip, EngineWarrior warrior)
{
int reg_IR_ValueA;
int reg_IR_ValueCpyA = ValuesA[ip];
int reg_AdrB;
int reg_AB_Value = ValuesA[ip];
int reg_direct;
bool reg_die = false;
reg_direct = mod(reg_IR_ValueCpyA + ip);
reg_IR_ValueA = ValuesB[reg_direct];
reg_AdrB = ip;
if (reg_IR_ValueA == 0) reg_die = true;
else ValuesA[reg_AdrB] = reg_AB_Value % reg_IR_ValueA;
ip++;
if (!reg_die)
{
warrior.Tasks.Enqueue(mod(ip));
}
else
{
warrior.DeadTasksCount++;
Died(ip);
}
}