VX 스크립트





ID만들기 스크립트가 VX자료실에 없길래 XP버전에 있는 것을 약간 수정했습니다.

기능에 별다른 이상 없는걸로 알고잇고여 ㅎㅎ (ABS 같은 복잡한 스크립트보다는 아래에 추가하는것이 좋아여 ㅎㅎ)

 

 

 

XP 스크립트를 억지로(?) VX로 변환한거라 그런지 파티원 수가 0이 되면 게임진행이 불가능합니다.

 

 

 

 

 

 

 

↓ 아래부터 스크립트

↓ 아래부터 스크립트

↓ 아래부터 스크립트

 

 

 

 

#=================================================
# ■ 아이디를 띄우기 (스프라이트 구현)
#-------------------------------------------------
#  Author: Bimilist(비밀소년)
#  Desc: 머리위에 아이디를 띄웁니다
#=================================================

class Game_Character
attr_accessor :sprite_id
end

class Sprite_Character < Sprite_Character
def create_id_sprite(text)
bitmap = Bitmap.new(160, 18)
bitmap.font.name = "휴먼매직체"
bitmap.font.size = 14
bitmap.font.color.set(0, 0, 0)
bitmap.draw_text(+1, +1, 160, 16, text, 1)
bitmap.font.color.set(255, 255, 255)
bitmap.draw_text(0, 0, 160, 16, text, 1)
@_id_sprite = Sprite.new(self.viewport)
@_id_sprite.bitmap = bitmap
@_id_sprite.ox = 80
@_id_sprite.oy = 14
@_id_sprite.x = self.x
@_id_sprite.y = self.y - self.oy / 2
@_id_sprite.z = 3000
@_id_sprite_visible = true
end

def dispose_id_sprite
@_id_sprite.dispose
@_id_sprite_visible = false
end

def update_id_sprite
if @character.sprite_id != nil
if not @_id_sprite_visible
create_id_sprite(@character.sprite_id)
end
@_id_sprite.x = self.x
@_id_sprite.y = self.y - self.oy
else
if @_id_sprite_visible
dispose_id_sprite
end
end
end

def update
super
update_id_sprite
end
end


#=================================================
# ■ 아이디를 띄우기 (사용 방법 정의)
#-------------------------------------------------
#  Author: Bimilist(비밀소년)
#  Desc: 머리위에 아이디를 띄웁니다
# Usage: 이벤트 아이디의 이름: [ID(아이디)]
# 주인공은 그딴거 할필요 없음
#=================================================

class Game_Event < Game_Event
def refresh
super
text = @event.name.dup
text.gsub!(/[[Ii][Dd](.+?)]/) do
@sprite_id = $1
end
end
end


class Game_Player < Game_Player
def update
if @sprite_id != $game_party.members[0].name
refresh
end
super
end
def refresh
super
@sprite_id = $game_party.members[0].name
end
end

Comment '20'
  • ?
    rpg좋쿤하 2011.11.08 17:23

    감사합니다^^

  • ?
    푸른초원 2011.11.08 22:18

    사흘전부터 찾고있던자료가 오늘뜨네 ㅋㅋ

  • profile
    꿈빛 2011.11.21 16:54

    감사합니닷 ㅎ

  • ?
    시르 2011.12.24 01:42

    감사합니다.^^

  • profile
    RPG하는사람 2012.01.03 17:57

    감사합니다

  • ?
    제복잇 2012.01.10 18:09

    감사감사!! 혹시 이름 뒤에 그림자 효과 없애는법은 없나요?

  • profile
    쉰라면블랙 2012.01.10 22:28

    좋군요 ^^ 제가 알던 다른거는 스크립트 충돌이 이러났는데, 이건 완벽하네요

  • profile
    쉰라면블랙 2012.01.10 22:28

    좋군요 ^^ 제가 알던 다른거는 스크립트 충돌이 이러났는데, 이건 완벽하네요

  • profile
    심량 2012.01.21 20:13

    오 좋네요ㅎ

    그런데 사용은 어떻게...?

  • ?
    난현이라는 2012.02.20 20:43

    오호! 강사합니다!

    제가 이런거 찾고 있었어요!

  • ?
    비밀비밀 2012.02.26 12:44

    찾던건데` 진짜 감사해요 ㅎ

  • ?
    ♥안녕 2012.04.01 13:10
    NPC 아이디는 안 뜨네요 .....

    주석으로 /이름표시 도 해보고

    [ID       ] 도 해보고...

    다 해봐도 안 뜨는데, 어떻게 해야 하죠?

  • ?
    코스모스필때 2012.07.28 13:27
    ㅋㅋㅋ 휴먼매직체 없어서 바탕체로 바꾸니 잘되네요. 좋네요.
    아이디 안뜨시는 분은 bitmap.font.name = "바탕체"<<< 여기 휴먼매직체 되어있는걸 바탕체나 있는 폰트로 바꾸세요.
  • ?
    이리엘 2012.08.01 19:40
    감사합니다.그림자 없애는 것 가능한가요?;;
  • profile
    곰장수 2012.10.10 00:13
    아아..이유는 몰라도 이 스크립트를 쓰면
    어느순간부터 계속 튕겨서 꺼져버리네요..혹시 저만 그런건가요?
  • ?
    tony 2012.10.11 14:50
    오류가 있다고 하는데요??
  • ?
    톨톨 2012.10.16 11:17
    스크립트에서 70번 줄 text.gsub!(/[[Ii][Dd](.+?)]/) do
    이 부분을 text.gsub!(/\[[Ii][Dd](.+?)\]/) do로 바꾼 후에
    이벤트 이름을[ID이름]으로 바꿔주시면 NPC처럼 이벤트 캐릭터 위에도 이름이 뜹니다.
    일단 표시는 제대로 됩니다.

    그림자가 보기 싫다면 17, 18번 줄을 주석 처리 해주시면 됩니다만, 글씨 주변에 얇은 테두리가 생기는 건 없앨 수 없는 것 같습니다.

    개인적으로 보기 편하려고 14~24번째 줄 부분에 주석을 달아놓았는데
    텍스트의 형태를 수정하고 싶은 분들이 계실 것 같아서 적습니다.

    bitmap = Bitmap.new(360, 20) #가로영역, 세로영역
    bitmap.font.name = "나눔고딕"
    bitmap.font.size = 13
    bitmap.font.color.set(0, 0, 0) #그림자 색상
    bitmap.draw_text(+1, +1, 360, 30, text, 1) #그림자(가로위치,세로위치,가로영역,세로영역)
    bitmap.font.color.set(255, 255, 255) #글씨 색상
    bitmap.draw_text(0, 0, 360, 20, text, 1) #글씨(가로위치,세로위치,가로영역,세로영역)
    @_id_sprite = Sprite.new(self.viewport)
    @_id_sprite.bitmap = bitmap
    @_id_sprite.ox = 180 #캐릭터 기준 가로위치 (가로영역의 절반 값으로 입력)
    @_id_sprite.oy = 20 #캐릭터 기준 세로위치


    이 스크립트에 조금 문제가 있는데 이름 입력 이벤트로 주인공 이름을 변경하게 되면, esc로 메뉴 진입을 한번 해야 캐릭터 머리 위의 이름이 바뀝니다.
    제가 수정 가능한 부분인진 모르겠지만 해보고 정 안 되면 질문 게시판으로 가야겠네요..ㅠㅠ

    거저 알려주긴 싫어서 좀 주절 거리자면,
    저도 초보이지만 npc이름 표시는 npc이름을 표시하는 xp스크립트를 찾아서 이 스크립트와 다른 점을 비교해서 수정한거고,
    텍스트에 관한 설명을 덧붙인 건 하나하나 값을 변경하고 테스트 하면서 나온 결과입니다.
    굉장히 심플한 스크립트인데도 저같은 초보자는 검색하고 분석하고 테스트 해보는데 2~3시간이 걸렸어요.
    투자한 시간에 비해서 결과물은 간단하지만 시간 아깝다는 생각 안 합니다.
    이런게 다 배우는 과정 일테니까요.
    아무 것도 안 하고 키보드 몇 번 두들겨서 답을 찾으려는 분들이 너무 많은거 같아서 주절거렸습니다.
    뭐든지 익히려면 근성이 필요해요.

    뭐 대단한거 수정한 것도 아니면서 생색 내는 것 처럼 보일 수도 있지만 대단한게 아니기 때문에 다른 분들도 충분히 하실 수 있는거라고 봅니다.
    여러분 근성을 키웁시다^.^
  • profile
    생비나 2012.12.31 21:34
    감사합니다~
  • ?
    ☆권지용☆ 2013.01.22 10:54
    초보라뇨~ 님이 초보면 저는..... 접어야되는겨? ㅋㅋ
    초보는 아니에요. 초보는 스크립트를 보기만 해도 어질... ㅋ
  • ?
    신유민 2015.12.13 22:01
    감사감사!! 혹시 이름 뒤에 그림자 효과 없애는법은 없나요?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5398
77 액알 스크립트 33 츠키아 2008.08.11 5826
76 체력 게이지바 스크립트 30 아방스 2008.09.01 5829
75 전투 지형에 따른 전투배경화면 표시 스크립트!! 30 file 레오 2008.09.17 5855
74 기타 빛 이펙트 71 file DEVIL<Li Patanis Roni Kraudus> 2008.06.06 5861
73 메뉴 창 크기 변경 스크립트 6 file Incubus 2008.05.25 5945
72 전투 ActBattle 전투 스크립트 13 file 사람이라면? 2010.08.16 5962
71 메시지 대화창효과 8 078656577er 2009.10.20 5972
70 기타 작은 게이지바 표시 스크립트 44 file 허걱 2009.02.05 5979
69 파티 대규모파티 KGC스크립 50 file RPGbooster 2008.10.08 6012
68 전투 포켓몬 스크립트 한글화 완료 26 file 서울냥이 2010.10.11 6030
67 스킬 합성샾 스크립트 ^^ [동영상 포함] 6 file 아방스 2008.09.23 6038
66 기타 캐릭터 소개화면 16 file 좀비사냥꾼 2009.03.29 6044
65 퀘스트 디아블로 스타일 퀘스트 시스템(번역) 38 file 훈덕 2009.02.03 6049
64 몬스터 도감 [수정] 68 file RPGbooster 2008.10.08 6074
63 기타 게임시간&밤낮 54 file 허걱 2009.02.14 6111
62 맵/타일 월드맵 스크립트 49 아방스 2008.09.07 6123
61 풍선대화 메세지시스템 32 file RPGbooster 2008.10.11 6126
60 퀘스트 퀘스트 스크립트 39 file RPGbooster 2008.10.11 6139
59 전투 GTBS 1.0 [스크립트] 24 아방스 2009.02.05 6141
58 타이틀/게임오버 타이틀화면 커스터마이즈 29 file 可わいい 2009.03.16 6141
Board Pagination Prev 1 ... 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 Next
/ 32