| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 |
- package mapCall
- import (
- "f1-game/internal/code"
- "f1-game/internal/enum"
- nameActor "f1-game/internal/name/actor"
- nameRemote "f1-game/internal/name/remote"
- "f1-game/internal/pb"
- "f1-game/internal/types"
- mapTypes "f1-game/nodes/map/internal/types"
- capp "f1-game/internal/cherry_app"
- cfacade "github.com/cherry-game/cherry/facade"
- )
- var (
- PathFind = &pathFindCall{
- pathFindPath: cfacade.NewPath("", nameActor.Map_Pathfind),
- }
- )
- type pathFindCall struct {
- pathFindPath string
- }
- func (p *pathFindCall) SiegePath(req *mapTypes.SiegePathReq) {
- capp.Call(p.pathFindPath, nameRemote.MapPathFind_SiegePath, req)
- }
- func (p *pathFindCall) Find(sx, sy, ex, ey int32, playerID, leagueID int64, marchType enum.MarchType) ([]*pb.Point, int32) {
- if sx == ex && sy == ey {
- return []*pb.Point{}, code.OK
- }
- req := pb.FindPathRequest{
- StartX: sx,
- StartY: sy,
- EndX: ex,
- EndY: ey,
- PlayerID: playerID,
- LeagueID: leagueID,
- MarchType: int32(marchType),
- }
- rsp := pb.Points{}
- errCode := capp.CallWait(p.pathFindPath, nameRemote.MapPathFind_Find, &req, &rsp)
- if code.IsFail(errCode) {
- return nil, errCode
- }
- return rsp.List, code.OK
- }
- func (p *pathFindCall) SetBarriers(req *mapTypes.BarrierRequest) {
- capp.Call(p.pathFindPath, nameRemote.MapPathFind_SetBarriers, req)
- }
- func (p *pathFindCall) RemoveBarriers(req types.Points) {
- capp.Call(p.pathFindPath, nameRemote.MapPathFind_RemoveBarriers, req)
- }
|