public void addProp(EPropType ePropType, String initText, String note, bool isFileName = false) { if (ePropType == EPropType.ePropType_Str && note == "内置粒子类型") { ePropType = EPropType.ePropType_GL_SysParticle; } else if (ePropType == EPropType.ePropType_Str && note == "条件类型") { ePropType = EPropType.ePropType_Condition; } else if (ePropType == EPropType.ePropType_Str && note == "Shader名称") { ePropType = EPropType.ePropType_ShaderType; } else if (ePropType == EPropType.ePropType_Str && note.Contains("Shader参数名")) { ePropType = EPropType.ePropType_ShaderParamType; } props.Add(new Prop(ePropType, note, initText, this, isFileName)); Size = new Size(Size.Width, 100 + 30 * props.Count); btnOk.Location = new Point(btnOk.Location.X, Size.Height - 80); foreach (Prop prop in props) { prop.tb.KeyUp += onKeyUp; } }
public void onUseSkill(TankManager target, EPropType type, Vector3 pos) { Debug.LogErrorFormat("TankPropBehavior::onUseSkill {0}", type); switch (type) { case EPropType.ePT_Shell: { StopCoroutine("ieUseSheild"); StartCoroutine("ieUseSheild"); break; } case EPropType.ePT_Mine: { Vector3 tPos = 100f * new Vector3(pos.x, pos.z, pos.y); GameObject.Instantiate(prefab_Mine, tPos, Quaternion.identity); break; } default: { break; } } }
private void Update() { if (!m_isPlayer) { return; } if (Input.GetButtonDown(m_usePropBtn)) { switch (m_curPropType) { case EPropType.ePT_Shell: { m_curPropType = EPropType.ept_None; m_tankmanager.useSkill(m_tankmanager.m_eid, EPropType.ePT_Shell); break; } case EPropType.ePT_Mine: { m_curPropType = EPropType.ept_None; m_tankmanager.useSkill(m_tankmanager.m_eid, EPropType.ePT_Mine); break; } default: { break; } } } }
public void SetAvatar(KBEngine.Avatar tAccount) { m_avatar = tAccount; m_eid = tAccount.id; m_roomNo = tAccount.roomNo; m_avatarName = tAccount.name; isPlayer = tAccount.isPlayer; m_curPropType = EPropType.ept_None; Debug.LogErrorFormat("onEnterWorld,{0} is Player: {1} ", m_avatarName, isPlayer); }
public void useSkill(int targetID, EPropType type) { if (m_curPropType == type) { Debug.LogErrorFormat("Player use prop {0}", type); m_curPropType = EPropType.ept_None; ServerEvents.Instance.useSkill(targetID, (int)type); } else { Debug.LogErrorFormat("You dont have this prop " + (EPropType)type); } }
public void onUseSkill(TankManager target, EPropType skill) { // Create an instance of the shell and store a reference to it's rigidbody. Rigidbody shellInstance = Instantiate(m_Shell, m_FireTransform.position, m_FireTransform.rotation) as Rigidbody; // Set the shell's velocity to the launch force in the fire position's forward direction. shellInstance.velocity = (float)skill * m_FireTransform.forward; shellInstance.GetComponent <ShellExplosion>().SetUp(m_tankmanager.m_eid, target.m_eid, m_isPlayer); // Change the clip to the firing clip and play it. m_ShootingAudio.clip = m_FireClip; m_ShootingAudio.Play(); }
// 向target使用技能 public void onUseSkill(TankManager targetTM, EPropType type, Vector3 pos) { Debug.LogErrorFormat("TankManager::onUseSkill {0}", type); switch (type) { case EPropType.ePT_Bullet: { m_shooting.onUseSkill(targetTM, type); break; } default: { m_propBehavior.onUseSkill(targetTM, type, pos); break; } } }
public Prop(EPropType _propType) { PropType = _propType; }
public void onGetProps(int type) { Debug.LogErrorFormat("id: {0} get props {1}", m_eid, (EPropType)type); m_curPropType = (EPropType)type; m_propBehavior.onGetProp(m_curPropType); }
public Prop(EPropType ePropType, String note, String initText, PropForm propForm, bool isFileName) { this.propForm = propForm; this.ePropType = ePropType; this.isFileName = isFileName; String prefix = ""; switch (ePropType) { case EPropType.ePropType_Int: prefix = "[int]"; break; case EPropType.ePropType_Float: prefix = "[float]"; break; case EPropType.ePropType_Point: prefix = "[point]"; break; case EPropType.ePropType_Bezier: prefix = "[bezier]"; break; case EPropType.ePropType_Str: prefix = "[string]"; break; case EPropType.ePropType_Strs: prefix = "[strings]"; break; case EPropType.ePropType_GL_BlendFactor: prefix = "[GLBlendFactor]"; break; case EPropType.ePropType_GL_SysParticle: prefix = "[SysParticle]"; break; case EPropType.ePropType_ShaderType: prefix = "[Shader]"; break; case EPropType.ePropType_ShaderParamType: prefix = "[ShaderParam]"; break; case EPropType.ePropType_Condition: prefix = "[Condition]"; break; case EPropType.ePropType_OffsetType: prefix = "[Offset]"; break; } this.tb.Text = initText; this.defaultForeColor = this.tb.ForeColor; int i = propForm.props.Count; this.label.Text = prefix + note; this.label.TabIndex = 3; this.label.Size = new System.Drawing.Size(300, 22); this.label.Location = new System.Drawing.Point(12, 24 + 25 * i); propForm.Controls.Add(label); this.tb.Location = new System.Drawing.Point(360, 20 + 25 * i); this.tb.Size = new System.Drawing.Size(300, 22); this.tb.TabIndex = 1; this.tb.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.onKeyPressed); propForm.Controls.Add(tb); this.btnSet.Location = new System.Drawing.Point(315, 20 + 25 * i); this.btnSet.Size = new System.Drawing.Size(45, 22); this.btnSet.TabIndex = 2; this.btnSet.Text = "设置"; this.btnSet.UseVisualStyleBackColor = true; propForm.Controls.Add(btnSet); switch (ePropType) { case EPropType.ePropType_Int: case EPropType.ePropType_Float: case EPropType.ePropType_Str: this.btnSet.Visible = false; break; case EPropType.ePropType_GL_BlendFactor: case EPropType.ePropType_GL_SysParticle: case EPropType.ePropType_Condition: case EPropType.ePropType_OffsetType: case EPropType.ePropType_ShaderType: case EPropType.ePropType_ShaderParamType: this.btnSet.Visible = true; this.tb.Enabled = false; break; default: //ePropType_Point, //ePropType_Bezier, //ePropType_Strs, //ePropType_PNG_File, //ePropType_PNG_Files, this.btnSet.Visible = false; // TODO 先都禁止掉 break; } this.btnSet.Click += onBtnSet_Click; }
public void onSkillResult(TankManager target, EPropType type) { Debug.LogErrorFormat("TankPropBehavior::onSkillResult {0}", type); }
public void onGetProp(EPropType type) { m_curPropType = type; }