|
这个没有什么代码,就是普通情况创建的普通抛射物,
def entity_bullet(self, data):#创建抛射物
playerId = data.get('playerId', 0)
EntityType = data.get('EntityType', 0)
power = data.get('power', 0)
damage = data.get('damage', 0)
gravity = data.get('gravity', 0)
targetId = data.get('targetId', 0)
pos_face = data.get('pos_face', 0)
playerPosComp = self.GetComponent(playerId, 'Minecraft', 'pos')
rotComp = self.GetComponent(playerId, 'Minecraft', 'rot')
tempEntity = self.CreateTempEntity()
typeComp = self.CreateComponent(tempEntity.mId, 'Minecraft', 'type')
typeComp.type = serverApi.GetMinecraftEnum().EntityConst.TYPE_BULLET
engineTypeComp = self.CreateComponent(tempEntity.mId, 'Minecraft', 'engineType')
engineTypeComp.engineType = EntityType
posComp = self.CreateComponent(tempEntity.mId, 'Minecraft', 'pos')
#posComp.pos = (playerPosComp.pos[0], playerPosComp.pos[1] + 3, playerPosComp.pos[2])
#posComp.pos = playerPosComp.pos
posComp.pos = self.face_tp({'id':playerId,'distan':pos_face})
bulletComp = self.CreateComponent(tempEntity.mId, 'Minecraft', 'bulletAttributes')
bulletComp.shooterId = playerId
bulletComp.direction = serverApi.GetDirFromRot(rotComp.rot)
bulletComp.damage = damage
bulletComp.isDamageOwner = True
bulletComp.power = power
bulletComp.gravity = gravity
bulletComp.targetId = targetId
bulletId = self.CreateEntity(tempEntity)
return bulletId
|
|