using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.InteropServices;
using System.Diagnostics;
using System.Runtime.Serialization.Formatters.Binary;
using System.IO;
using nativeCom;
//吴龙剑先完成这个单元 !!!
public class mj:mjbase{
bool isTmp=true;
public bool fun_menqing(int hpr){//查引用 看范例
mainDo("门清",new int[]{hpr},null);
return getvalue_int(0)>0;
}
public int fun_lingpai(){
mainDo("零牌",null,null);
return getvalue_int(0);
}
public int fun_lingpaiSty(){
mainDo("零牌类型",null,null);
return getvalue_int(0);
}
///
/// 添加临时番
///
///
public void fun_addTempFan(int[] fans){
mainDo("临时番",fans,null);
}
///
/// 上把庄家
///
///
public int fun_lastZj(){
mainDo("上把庄家",null,null);
return getvalue_int(0);
}
///
/// 获取庄家ID
///
///
public int fun_zjUserID(){
mainDo("庄家",null,null);
return getvalue_int(0);
}
public void fun_addTempFan_qianlouzi(int[] fans,bool canju,bool writetmp){
sbyte[] bts=new sbyte[2];
if(canju) bts[0]=1;else bts[0]=0;
if(writetmp) bts[1]=1;else bts[1]=0;
mainDo("钱娄子",fans,bts);
}
/*
*
*
-----麻将----
55: begin //增加杠 谁 牌 类型(0..2 <-10则等于-n-10 -1则等于杠上精 放杠人[0..1有效])
C_lg.addgang_qian(pb[0][0], pb[0][1], pb[0][2], pb[0][3]);
end;
56: begin //删除杠 谁 牌 新分数【-1一定删 否则和老分数比较、大于老的才删】
C_lg.delgang_qian(pb[0][0], pb[0][1], pb[0][2]);
end;
57: begin //牌是否杠
p[4][0] := 0;
if c_lg.paiisgang(pb[0][0], pb[0][1]) then
p[4][0] := 1;
end;
*
**/
///
/// 默认值sty = -1 fan = -1
///
///
///
///
///
public void fun_jiagang(int who,int pai,int sty,int fan){
sbyte[] bts=new sbyte[4];
bts[0]=(sbyte) who;
bts[1]=(sbyte) pai;
bts[2]=(sbyte) sty;
bts[3]=(sbyte) fan;
//log("加杠:" + who + "," + pai + "," + sty + "," + fan);
mainDo("增加杠",null,bts);
}
public void fun_delgang(int who,int pai,int fengValue){
sbyte[] bts=new sbyte[3];
bts[0]=(sbyte) who;bts[1]=(sbyte) pai;
bts[2] =(sbyte)fengValue;
mainDo("删除杠",null,bts);
}
public int fun_paiIsGang(int who,int pai){
sbyte[] bts=new sbyte[2];
bts[0]=(sbyte) who;
bts[1]=(sbyte) pai;
mainDo("牌是否杠",null,bts);
return getvalue_int(0);
}
public byte[] fun_lajipai(sbyte[] pais,int who,int penglvl){//查引用 看范例
mainDo("垃圾牌",new int[]{who,penglvl},pais);
byte[] r= getvalue_byteArr(1,getvalue_byte(0));
return r;
}
//视觉上,左面的剩余牌张 0..PlayerCount-1表示双方不透视 PlayerCountMax表示全透视(想赢钱的鬼)
public int fun_paiCnt_lose(int pai,int apos){
mainDo("剩余牌",new int[]{pai,apos},null);
return getvalue_int(0);
}
//---------------------从这里开始 把所有需求,直接按逻辑罗列。。。 ----------------------
public int[] fun_test(int a,int b){
if(isTmp)return new int[]{3,4,5,2};
mainDo("吴龙剑描述",new int[]{a,b},null);
return new int[]{ getvalue_int(0),getvalue_int(1),getvalue_int(2),getvalue_int(3)};
}
///
/// 获取放炮人
///
///
///
public virtual int getFangPaoMan(int fangpaonew){
if(fangpaonew >= 10)
return fangpaonew - 10;
return fangpaonew;
}
}