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
130 기타 게임시간&밤낮 54 file 허걱 2009.02.14 6111
129 기타 캐릭터 소개화면 16 file 좀비사냥꾼 2009.03.29 6044
128 기타 작은 게이지바 표시 스크립트 44 file 허걱 2009.02.05 5979
127 기타 빛 이펙트 71 file DEVIL<Li Patanis Roni Kraudus> 2008.06.06 5860
126 기타 몬스터 리얼한 효과 27 file 사람이라면? 2010.08.16 5074
125 기타 RPG 2000이나 RPG 2003처럼 전체화면으로 나오게 하는 스크립트(대박) 21 Man... 2008.10.28 4821
124 기타 rpg vx 렉 줄이는 스크립트 34 아방스 2008.03.09 4813
123 기타 게임 해상도를 조절 하는 스크립트 19 아방스 2008.01.21 4780
» 기타 아이디를 띄우기 20 12345678 2011.11.07 4626
121 기타 간단한 스크립트의 사용법 6 아방스 2008.03.09 4552
120 기타 책 읽기 스크립트 44 file 히류 2010.10.05 4506
119 기타 책 읽기 스크립트. 19 허걱 2009.01.31 4490
118 기타 태양 스크립트. 15 file 할렘 2009.02.20 4463
117 기타 로딩중 스크립트 24 file NO.0 2009.07.11 4461
116 기타 글씨표시 스크립트 32 file 허걱 2009.08.10 4421
115 기타 심플 마우스 시스템 1.5 애드온 11 file RMdude 2009.02.11 4325
114 기타 집안의 가구를 내마음대로 데코레이션하기 15 file EuclidE 2010.09.18 4303
113 기타 [자작] 횡스크롤 점프스크립트 18 file 좀비사냥꾼 2009.04.03 4276
112 기타 (이거 정말 좋군요) 말이나 용을 탈수있게 하는 스크립트. 31 file 아방스가 짱 2010.02.28 4261
111 기타 아이콘 캐릭터 17 file 허걱 2010.02.28 4224
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7