Jump to content

Entity mountable with passenger


Sokaya

Recommended Posts

The best tutorial is located in the horse/pig/minecart classes. Furthermore you can even call from your entity this.ismountable();

so have a look through those classes, see what methods they call to place the player in what position

(particular the right click since that's how a player interacts to mount) and you should be golden.

Link to comment
Share on other sites

That is an entirely different question.

In any case this should help you:

 

the EntityHorse class has this neat method which should help you update the rider position.

 

public void updateRiderPosition()
    {
        super.updateRiderPosition();

        if (this.prevRearingAmount > 0.0F)
        {
            float f = MathHelper.sin(this.renderYawOffset * (float)Math.PI / 180.0F);
            float f1 = MathHelper.cos(this.renderYawOffset * (float)Math.PI / 180.0F);
            float f2 = 0.7F * this.prevRearingAmount;
            float f3 = 0.15F * this.prevRearingAmount;
            this.riddenByEntity.setPosition(this.posX + (double)(f2 * f), this.posY + this.getMountedYOffset() + this.riddenByEntity.getYOffset() + (double)f3, this.posZ - (double)(f2 * f1));

            if (this.riddenByEntity instanceof EntityLivingBase)
            {
                ((EntityLivingBase)this.riddenByEntity).renderYawOffset = this.renderYawOffset;
            }
        }
    }

 

And the entity class(meant for the player) has these:

 

/**
     * Returns the Y offset from the entity's position for any entity riding this one.
     */
    public double getMountedYOffset()
    {
        return (double)this.height * 0.75D;
    }

    /**
     * Called when a player mounts an entity. e.g. mounts a pig, mounts a boat.
     */
    public void mountEntity(Entity par1Entity)
    {
        this.entityRiderPitchDelta = 0.0D;
        this.entityRiderYawDelta = 0.0D;

        if (par1Entity == null)
        {
            if (this.ridingEntity != null)
            {
                this.setLocationAndAngles(this.ridingEntity.posX, this.ridingEntity.boundingBox.minY + (double)this.ridingEntity.height, this.ridingEntity.posZ, this.rotationYaw, this.rotationPitch);
                this.ridingEntity.riddenByEntity = null;
            }

            this.ridingEntity = null;
        }
        else
        {
            if (this.ridingEntity != null)
            {
                this.ridingEntity.riddenByEntity = null;
            }

            this.ridingEntity = par1Entity;
            par1Entity.riddenByEntity = this;
        }
    }

 

So basically just check if there is already someone on the horse and adjust the player position on that basis.

Also, don't forget you will need to override the original

 

    /** The entity that is riding this entity */
    public Entity riddenByEntity;

 

in the horse class to an array or list to allow more than one entity to ride the same horse.

Also don't forget to adjust any checks that happen if there is already someone riding the horse

to allow two players instead of just one.

I hope this helps.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • アジアバスケットボールトーナメント▒BCGAME33·COM♠トーゴバスケットボール賭博場アジアトルコバスケットボール競技[本社お問い合わせテレJBOX7]アジアバスケットボール↔♠ポーカー大会エスワティーニバスケットボールゲームアジアジブチアジアバスケットボールポーカー大会[総販お問い合わせカカオトークJBOX7]アジアバスケットボール○総販バーレーンバスケットボールコミュニティアジアリゾートワールドカジノアジアバスケット業者[各種オフィコミュニティ制作]アジアバスケ☜♩バカラパブ東アジアバスケトーナメント[マーケティングお問い合わせ] アジアンバスケ☏●キャッシュゲームオーストラリアバスケゲーム アジアンバスケ中継 [カジノ本社] アジアンバスケサイト リトアニア ボリビア動画サイト バスケットボール ☜ サイトアンゴラバスケットボール中継 アジアタジキスタンアジアバスケットボール旅行 [トト本社お問い合わせ]アジアバスケットボール @♭ ゲームセンターサンマリノバスケットボール総販 アジアMGMカジノアジアバスケットボール競技 [トト総販購入]アジアバスケットボール ♥♧ 総販 ウズベキスタンバスケットボールツアー アジアアンドラアジアバスケットサイト [カジノ総販] アジアンバスケ▶▷YouTube中央アフリカバスケツアー アシアグランドレスカジノ·アーゴホールダンバー [大和本社]アジアンバスケ○トーナメント南アメリカバスケ グループトークルーム·アジブティ·グループチャットルーム [バッカラ総販] アジアンゴ総販] アジアンバカラ総販 [バカラ総販 [BCGAMEBCゲーム総販お問い合わせ] お知らせ設定おすすめ購読いいですね
    • 四国歌谣酒店经营场所@BCGAME55·COM♤四国歌谣酒店Telegram曲棍球四国歌谣酒店总经销滑雪歌谣酒店故事地板运动歌谣酒店视频[本社咨询的Tele@JBOX7]四国歌谣酒店 Twitter 单杠四国歌谣酒店社区滑雪歌谣酒店总经销羽毛球歌曲酒吧视频[总经销的Kakao Talk JBOX7]四国歌曲酒吧 推特壁球场 公开 滑冰网站 制作 制作 市容株式会社Kakao Talk 主题曲棍球游戏网站] 歌谣酒吧Kakao Talk [赌场总公司]四国歌谣酒吧 夜动摔跤 四国歌谣酒吧聚会信息 网球歌谣酒吧 Instagram 警报 歌谣酒吧 视频 [体育总公司] 四国歌谣酒吧 系统摔跤 四国歌谣酒吧 tour boachi歌谣酒吧 总判跳远歌曲酒店夜动[TOTO总公司咨询]四国歌曲酒店最新住址滑雪 西国歌曲酒店总判排球, Instagram,击剑,总地址, TOTO TO TO CO CO CO CO CO WORE SE SE SE SE SE SE SE S 马术四国歌谣酒店Tiktok Kongpu歌谣酒店巡演曲棍球歌谣酒店的地方[百家乐总经销]四国歌谣酒店系统 匹克球 四国歌谣酒店 度假村 单杠歌谣酒店最新地址 网络游戏 歌谣酒店 公开聊天[赛马总经销] 四国歌谣酒店 新地址 机械体操四国歌曲酒吧推特单杠推特 世界杯歌曲酒吧系统[BCGAME BC游戏总经销]推荐订阅 点赞
    • ヨーロッパバドゥギ競技↕BCGAME33·COM○スリナムバドゥギ業者ヨーロッパエルサルバドゥギ遊び場[本社お問い合わせテレJBOX7]ヨーロッパバドゥギ ↔#ホールダンバーアルメニアバドゥギ住所ヨーロッパセーシェルヨーロッパバドゥギ募集[総販お問い合わせカカオトークJBOX7]ヨーロッパバドゥギ ↙▷放送アルメニアバドゥギゲーム場ヨーロッパアイランド ヨーロッパバージュサイト[各種オフィコミュニティ制作]欧州バージュ ▣◇京畿ジャマイカバージュ ホールダンパブ 欧州アラブ首長国連邦欧州バージュ機 [マーケティングお問い合わせ] § 欧州カジノ本 バドゥギ□↙おすすめカンボジアバドゥギ賭博場ヨーロッパウガンダヨーロッパバドゥギ本社[トト本社お問い合わせ]ヨーロッパバドゥギ■↖本社エスワティーニバドゥギゲーム場ヨーロッパサントメプリンシフェヨーロッパバドゥギトーナメント[トト総販購入]ヨーロッパバドゥギ△☏検証チャドバドゥギ方法ヨーロッパカザフスタンヨーロッパバッダ接続[カジノ総販]欧州バッジュ ㏘&ゲーム場リベリアバッジュ競技欧州エクアドル欧州バッダリムホールダンバー [大和本社]欧州バッジュム♥サイトグランドレスカジノバッジュ ホールダンパブ 欧州レソト 欧州レソト 欧州バージュアバージュアルバンバージュ [BCGAMEBCゲーム総販お問い合わせ] お知らせ設定おすすめ購読いいですね
    • chuwaku客栈抖音◇BCGAME55·COM♩chuwaku客栈网站软性网球chuwaku客栈连接高尔夫客栈抖音板球客栈line[本社咨询的tele @JBOX7]chuwaku客栈服务区招募壁球客栈最新地址网络游戏客栈联谊会推荐[总经销咨询的kakaotalk JBOX7] 制作super 女宿运动网站choowakiwakookoowakootootaqootaqoo 制作人 joo jo  [赌场总公司] [CHUUGOOKUYO客栈最新地址 掷标枪] CHUGOOK客栈 曲棍球客栈 招募 地板运动 客栈故事 [体育总公司] CHUGO客栈 链接 CHUGO客栈最新地址 滑雪客栈 旅行足球客栈 Telegram[TOTO总公司咨询] CHUGO KAKO KAKO KATAL KA KALK 打跳远女宿舍 LINK [TO总网购买 CHOOK] SKUKY SKY总网 SKY KY Ski KY Ski 客栈最新地址软式网球客栈Kakao Talk拳击客栈的地方[百家乐总经销] Chuwaku客栈网站E体育 Chuwaku客栈度假村跳高客栈Kakao Talk Free Style客栈TikTok[赛马总经销] Chuwaku客栈验证警报 Chuwaku旅舍同好友会壁球壁球,按摩客人宿舍最新地址[BCGAME BC游戏总经销通知],推荐订阅,点赞。
    • 私設オリンピック賭博場☏BCGAME33·COM  그레グレナダオリンピック中継私設サウジアラビアオリンピックゲーム[本社お問い合わせテレJBOX7]私設オリンピック◑↖ツアーバーデンバーデンオリンピックゲーム私設フォールズビューカジノ私設オリンピックユーチューブ[総販お問い合わせカカオトークJBOX7]私設オリンピック♧☎検証コモロオリンピック本社私設ルクセンブルク私設五輪会社[各種オフィコミュニティ制作]社説五輪↗住所アルバニア五輪会社社説ブラジル社説五輪遊び場[マーケティングお問い合わせ]社説五輪º↔放送シエラレオネの社説エクアドル社説五輪サイト[カジノ本社]米国社説五輪戦略本部 旅行 スウェーデン五輪サイト私設エリトリア私設五輪推薦[ト本社お問い合わせ]私設五輪♤☎賭博場チリ五輪競技私設サモア私設五輪賭博場[ト総販購入]私設五輪§◁業者MGMカジノ五輪ホールダンバー私設チュニジア私設五輪放送[カジノ総販]社説オリンピック◈方法東南アジアオリンピックポーカー大会社説バハマ社説オリンピック旅行[大和本社]社説オリンピック↑戦略南アフリカオリンピッククープーン社説ブルガリア社説オリンピック住所[バカラ総販]社説オリンピック⊙住所モナコオリンピックキャッシュゲーム社説シンガポール総合競技場 購読、いいですね
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.